CN114398345A - 数据迁移方法、装置、计算机设备及存储介质 - Google Patents
数据迁移方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN114398345A CN114398345A CN202210060462.7A CN202210060462A CN114398345A CN 114398345 A CN114398345 A CN 114398345A CN 202210060462 A CN202210060462 A CN 202210060462A CN 114398345 A CN114398345 A CN 114398345A
- Authority
- CN
- China
- Prior art keywords
- data
- migration
- target
- migrated
- item
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及人工智能技术,提供一种数据迁移方法、装置、计算机设备与存储介质,包括:获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项;获取并解析历史数据库转移日志,得到初始数据迁移指标;解析待迁移数据项,得到待迁移数据项的第一数据类型,并根据第一数据类型调整初始数据迁移指标,得到目标数据迁移指标;解析目标迁移数据项,得到目标迁移数据项的第二数据类型,并根据第二数据类型确定目标数据迁移指标对应的转移规则;构建转移规则对应的转移代码;确定待迁移数据项的迁移优先级,并调用转移代码按照迁移优先级进行数据迁移。本申请能够提高数据迁移的效率,促进智慧城市的快速发展。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种数据迁移方法、装置、计算机设备及存储介质。
背景技术
目前的应用系统,基本上都离不开数据库。一个产品,在开始的时候用的是mysql数据库,但随着产品的迭代,或是产品部署给客户,而客户只支持其他类型数据库时,则涉及到产品数据库的迁移。
在实现本申请的过程中,申请人发现现有技术存在如下技术问题:目前各个数据库厂商提供的数据迁移工具需要处理分析输入语句,将其一一分解,并将分解得到的单元进行重组得到新的输出语句。这种方式需要对迁移语句单个进行处理。由于每个需要迁移的语句都需要单独的处理,开发该部分代码尤其是多种数据库之间的语法迁移时,成本高、数据迁移效率低。
因此,有必要提供一种数据迁移方法,能够提高数据迁移的效率。
发明内容
鉴于以上内容,有必要提出一种数据迁移方法、数据迁移装置、计算机设备及存储介质,能够提高数据迁移的效率。
本申请实施例第一方面还提供一种数据迁移方法,所述数据迁移方法包括:
获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项;
获取并解析历史数据库转移日志,得到初始数据迁移指标;
解析所述待迁移数据项,得到所述待迁移数据项的第一数据类型,并根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标;
解析所述目标迁移数据项,得到所述目标迁移数据项的第二数据类型,并根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则;
构建所述转移规则对应的转移代码;
确定所述待迁移数据项的迁移优先级,并调用所述转移代码按照所述迁移优先级进行数据迁移。
进一步地,在本申请实施例提供的上述数据迁移方法中,所述获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项包括:
获取所述源数据库中的第一标记,并确定所述第一标记对应的数据项为待迁移数据项;
获取所述待迁移数据项的第一数据名称以及所述目标数据库中数据项的第二数据名称;
确定与所述第一数据名称的文本相似度超过预设文本相似度阈值的第二数据名称对应的数据项为目标迁移数据项,并对所述目标迁移数据项添加第二标记。
进一步地,在本申请实施例提供的上述数据迁移方法中,所述获取并解析历史数据库转移日志,得到初始数据迁移指标包括:
解析历史数据库转移日志,并检测所述历史数据库转移日志中是否存在预设关键词;
当检测结果为所述历史数据库转移日志中存在所述预设关键词时,获取所述预设关键词对应的目标信息;
解析所述目标信息,得到所述目标信息对应的指标项以及各个所述指标项的层级关系;
根据所述层级关系组合所述指标项,得到初始数据迁移指标。
进一步地,在本申请实施例提供的上述数据迁移方法中,所述根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标包括:
获取所述第一数据类型对应的指标项信息;
匹配所述指标项信息与所述初始数据迁移指标,得到所述指标项信息之外的其余数据迁移指标;
从所述初始数据迁移指标中删除所述其余数据迁移指标,得到目标数据迁移指标。
进一步地,在本申请实施例提供的上述数据迁移方法中,在所述根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标之后,所述方法还包括:
获取所述待迁移数据项对应的历史迁移日志;
确定监控维度,并按照所述监控维度解析所述历史迁移日志,得到所述待迁移数据项对应的出错等级;
选取所述出错等级高于预设出错等级阈值的数据项作为目标待迁移数据项;
对所述目标待迁移数据项设置监控节点,并调用所述监控节点监控所述目标待迁移数据项的数据迁移过程。
进一步地,在本申请实施例提供的上述数据迁移方法中,所述根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则包括:
获取所述第一数据类型与所述第二数据类型的差异信息;
按照预设数据格式处理所述差异信息,得到结构化差异信息;
按照所述结构化差异信息确定所述目标数据迁移指标对应的转移规则。
进一步地,在本申请实施例提供的上述数据迁移方法中,所述构建所述转移规则对应的转移代码包括:
获取所述转移规则对应的多个执行条件;
确定所述执行条件间的逻辑运算关系;
根据所述执行条件与所述逻辑运算关系构建所述转移规则对应的转移代码。
本申请实施例第二方面还提供一种数据迁移装置,所述数据迁移装置包括:
数据项获取模块,用于获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项;
日志解析模块,用于获取并解析历史数据库转移日志,得到初始数据迁移指标;
数据项解析模块,用于解析所述待迁移数据项,得到所述待迁移数据项的第一数据类型,并根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标;
规则确定模块,用于解析所述目标迁移数据项,得到所述目标迁移数据项的第二数据类型,并根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则;
代码构建模块,用于构建所述转移规则对应的转移代码;
数据迁移模块,用于确定所述待迁移数据项的迁移优先级,并调用所述转移代码按照所述迁移优先级进行数据迁移。
本申请实施例第三方面还提供一种计算机设备,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如上述任意一项所述数据迁移方法。
本申请实施例第四方面还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述数据迁移方法。
本申请实施例提供的上述数据迁移方法、数据迁移装置、计算机设备以及计算机可读存储介质,通过解析历史数据库转移日志,得到初始数据迁移指标,继而根据每一所述待迁移数据项的数据类型确定目标数据迁移指标,针对所述目标数据迁移指标进行具体数据迁移,既能够保证每个所述待迁移数据项的数据迁移准确性,又能够提高指标确定的效率,继而提高数据迁移的效率。本申请可应用于智慧政务、智慧交通等智慧城市的各个功能模块中,比如智慧政务的数据迁移模块等,能够促进智慧城市的快速发展。
附图说明
图1是本申请实施例一提供的数据迁移方法的流程图。
图2是本申请实施例二提供的数据迁移装置的结构图。
图3是本申请实施例三提供的计算机设备的结构示意图。
如下具体实施方式将结合上述附图进一步说明本申请。
具体实施方式
为了能够更清楚地理解本申请的上述目的、特征和优点,下面结合附图和具体实施例对本申请进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本申请,所描述的实施例是本申请一部分实施例,而不是全部的实施例。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本发明实施例提供的数据迁移方法由计算机设备执行,相应地,数据迁移装置运行于计算机设备中。图1是本申请实施例一提供的数据迁移方法的流程图。如图1所示,所述数据迁移方法可以包括如下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些可以省略:
S11,获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项。
在本申请的至少一实施例中,所述源数据库是指数据迁出的数据库,所述目标数据库是指数据迁入的数据库,所述待迁移数据项是指所述源数据库中待迁出的数据项,所述目标迁移数据项是指所述目标数据库中待迁入的数据项。所述待迁移数据项与所述目标迁移数据项间存在映射关系,在一实施例中,对于每一所述待迁移数据项,均存在与之对应的所述目标迁移数据项。所述待迁移数据项是预先设置的数据项。对于所述源数据库来说,所述源数据库中可能存在N个数据项,其中,需要进行数据迁出的数据项的数量为K,K可以小于或者等于N,在此不做限制。
在一实施例中,建立所述源数据库与所述目标数据库的心跳连接,并将所述源数据库中的待迁移数据项相关信息添加至心跳包中,由所述源数据库发送至所述目标数据库中,当所述目标数据库接收到所述心跳包,解析所述心跳包,得到所述心跳包中的所述待迁移数据项的相关信息,并根据所述相关信息从所述目标数据库中匹配对应的所述目标迁移数据项,并将所述目标迁移数据项的相关信息添加至所述心跳包中,由所述目标数据库发送至所述源数据库中。本申请通过对所述源数据库与所述目标数据库建立心跳连接,既能够确定所述源数据库与所述目标数据库间的数据连接正常,又能够分别得到待迁移数据项与目标迁移数据项对应相关信息。其中,所述相关信息可以是指所述待迁移数据项与所述目标迁移数据项对应的数据属性等信息。
可选地,所述获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项包括:
获取所述源数据库中的第一标记,并确定所述第一标记对应的数据项为待迁移数据项;
获取所述待迁移数据项的第一数据名称以及所述目标数据库中数据项的第二数据名称;
确定与所述第一数据名称的文本相似度超过预设文本相似度阈值的第二数据名称对应的数据项为目标迁移数据项,并对所述目标迁移数据项添加第二标记。
其中,所述第一标记是指预先设置的用于标识待迁出数据的标记,所述第二标记是指匹配到的用于标识待迁入数据的标记。所述第一标记与所述第二标记可以为颜色标记、数字标记或字母标记,在此不做限制。在一实施例中,所述第二标记可以为系统人员根据所述第一标记预先设置的;在其他实施例中,所述第二标记可以通过文本相似度的方式确定,也即所述待迁移数据项的数据名称与所述目标迁移数据项的数据名称间的文本相似度超过预设文本相似度阈值,所述预设文本相似度阈值为预先设置的用于评估文本相似度的值。本申请通过文本相似度的方式确定与所述待迁移数据项对应的所述目标迁移数据项,能够提高所述目标迁移数据项确定的效率,继而提高数据迁移的效率。
S12,获取并解析历史数据库转移日志,得到初始数据迁移指标。
在本申请的至少一实施例中,所述历史数据库转移日志是指预设数据库中存储的任意不同数据库间进行数据迁移的日志信息,以数据库A与数据库B为例,所述历史数据库转移日志中包含数据库A与B的名称、数据库A与B中待迁出/待迁入数据的名称、数据库A与B中待迁出数据的数据类型以及数据迁移过程中需要进行数据调整的指标。考虑到数据存储的隐私性与可靠性,所述预设数据库可以为区块链中的目标节点。所述初始数据迁移指标也即从所述历史数据库转移日志中积累的关于数据迁移过程中需要进行数据调整的指标的相关信息。所述初始数据迁移指标中包含指标项以及各个所述指标项的层级关系。可以理解的是,随着所述历史数据库转移日志中记录的数据库越多,所述初始数据迁移指标越完整。
本申请首先通过对历史数据库转移日志进行解析,并依据解析结果构建初始数据迁移指标,继而便于根据所述待迁移数据项的第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标,避免人为根据待迁移数据项的第一数据类型设定数据迁移指标,能够提高目标数据迁移指标确定的准确性与效率,继而提高数据迁移的准确性与效率。
可选地,所述获取并解析历史数据库转移日志,得到初始数据迁移指标包括:
解析历史数据库转移日志,并检测所述历史数据库转移日志中是否存在预设关键词;
当检测结果为所述历史数据库转移日志中存在所述预设关键词时,获取所述预设关键词对应的目标信息;
解析所述目标信息,得到所述目标信息对应的指标项以及各个所述指标项的层级关系;
根据所述层级关系组合所述指标项,得到初始数据迁移指标。
其中,所述预设关键词是指系统人员预先设置用于标识数据迁移过程中需要进行数据调整的指标的关键词。所述目标信息是指数据迁移过程中需要进行数据调整的指标的信息,也即指标项信息,所述指标项信息可以包括指标项的名称以及指标项的层级关系等信息。在一实施例中,数据迁移过程中需要进行数据调整的指标的数量可能为1个,也可能为多个,当需要调整的指标的数量为多个时,也即所述指标项为多个时,解析所述目标信息,能够得到所述目标信息对应的指标项以及各个所述指标项的层级关系。
在一实施例中,所述指标项可以包括但不限于字段类型、字段长度、语法类型以及函数等方面,其中,当所述指标项为字段类型时,该指标项下还包括若干子指标项,例如,所述子指标项可以为字符串类型、数值类型、时间类型的转换,其中,数值类型转换的子指标项下还包含二级子指标项,例如,二级子指标项可以为整数数值类型转换、带小数数值类型转换。时间类型的转换的子指标项下还包含二级子指标项,例如,二级子指标项可以为不含时分秒时间类型转换、含时分秒时间类型转换。当所述指标项为语法类型时,该指标项下还包含若干子指标项,例如,所述子指标项可以为数据定义语言DDL、数据查询语言DQL、数据操纵语言DML、数据控制语言DCL等,在此不做限制。
S13,解析所述待迁移数据项,得到所述待迁移数据项的第一数据类型,并根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标。
在本申请的至少一实施例中,所述第一数据类型是指所述待迁移数据项对应的数据类型,所述第一数据类型可以包含字段类型、字段长度类型、语法类型以及函数类型等信息。所述第一数据类型存储于所述待迁移数据项对应的数据日志中,通过解析所述数据日志的相关关键词,能够得到字段类型、字段长度类型、语法类型以及函数类型等信息。所述相关关键词是指字段类型、字段长度类型、语法类型以及函数类型等对应的关键词。
可选地,所述根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标包括:
获取所述第一数据类型对应的指标项信息;
匹配所述指标项信息与所述初始数据迁移指标,得到所述指标项信息之外的其余数据迁移指标;
从所述初始数据迁移指标中删除所述其余数据迁移指标,得到目标数据迁移指标。
其中,所述第一数据类型对应的指标项信息是指所述字段类型、字段长度类型、语法类型以及函数类型等指标对应的指标项内容。所述其余数据迁移指标是指所述初始数据迁移指标中多余的指标项,将多余的指标项从所述初始数据迁移指标中删除,能够得到所述待迁移数据项对应的目标数据迁移指标。
本申请通过对每一所述待迁移数据项进行数据类型分析,匹配与之对应的目标数据迁移指标,能够保证每个所述待迁移数据项的数据迁移的准确性,从而提高整体数据迁移的准确性。
在一实施例中,为了保证数据迁移的准确性,可以设置监控节点,并调用所述监控节点对数据迁移的过程进行监控,及时对数据迁移过程中出现差错进行预警。在一实施例中,可以针对每一所述待迁移数据项均设置监控节点。在其他实施例中,可以对有需要的所述待迁移数据项设置监控节点,既能够保证数据迁移的准确性,也能够避免设置过多节点导致的资源浪费。
可选地,在所述根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标之后,所述方法还包括:
获取所述待迁移数据项对应的历史迁移日志;
确定监控维度,并按照所述监控维度解析所述历史迁移日志,得到所述待迁移数据项对应的出错等级;
选取所述出错等级高于预设出错等级阈值的数据项作为目标待迁移数据项;
对所述目标待迁移数据项设置监控节点,并调用所述监控节点监控所述目标待迁移数据项的数据迁移过程。
其中,所述历史迁移日志是指所述待迁移数据项对应的数据迁移过程的日志,所述历史迁移日志中包含所述待迁移数据项的迁移信息,比如,数据迁移过程中的出错时间、出错原因等信息。所述监控维度是指预先设置的用于评估所述待迁移数据项是否需要进行监控的维度,例如,所述监控维度可以为出错频率或出错次数等维度,在此不做限制。所述预设出错等级阈值为预先设置的用于标识待迁移数据项的出错情况的阈值。所述目标待迁移数据项是指所述待迁移数据项中需要设置监控节点的数据项。
S14,解析所述目标迁移数据项,得到所述目标迁移数据项的第二数据类型,并根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则。
在本申请的至少一实施例中,所述第二数据类型是指所述目标迁移数据项对应的数据类型,所述第二数据类型可以包含字段类型、字段长度类型、语法类型以及函数类型等信息。所述第二数据类型存储于所述目标迁移数据项对应的数据日志中,通过解析所述数据日志的相关关键词,能够得到字段类型、字段长度类型、语法类型以及函数类型等信息。所述相关关键词是指字段类型、字段长度类型、语法类型以及函数类型等对应的关键词。所述转移规则是指用于进行数据迁移的规则,对于每一所述目标迁移数据项,均存在对应的转移规则。
在一实施例中,所述源数据库可以为Oralce数据库,所述目标数据库为PostgreSQL数据库。示例性地,对于字符串类型转换来说,所述转移规则可以如下:同一个字符串分别使用Oralce与PostgreSQL字段串类型存储时两者的长度比例为a:b,当一个长度为A的字符串由Oralce字符串类型转换为PostgreSQL字段串类型时,该字符串由PostgreSQL字段串类型存储对应的长度为:bA/a向上取整;当一个长度为A的字符串由PostgreSQL字段串类转换为Oralce字符串类型,该字符串由Oracle字段串类型存储对应的长度为:aA/b向上取整。
示例性地,对于带小数数值类型转换来说,所述转移规则可以如下:同一个整数数值分别使用Oralce与PostgreSQL数值类型存储时两者的长度比例为c:d,当一个整数部分长度为E,小数部分长度为F的带小数数值由Oralce数值类型转换为PostgreSQL数值类型时,该数值由PostgreSQL数值类型存储对应的整数部分长度为:dE/c向上取整,小数部分长度为:dF/c向上取整;当一个整数部分长度为E,小数部分长度为F的带小数数值由PostgreSQL数值类型转换为Oralce数值类型时,该数值由Oralce数值类型存储对应的整数部分长度为:cE/d向上取整,小数部分长度为:cF/d向上取整。
示例性地,对于语法类型转换(例如,所述语法类型转换可以为sql语法转换)来说,主要包含:数据定义语言DDL、数据查询语言DQL、数据操纵语言DML、数据控制语言DCL,所述转移规则可以如下:1)记录源数据库与目标数据库两个数据库使用同一类型数据库语言的语句,其中含有表名、字段名称、字段类型、字段长度的地方可作为参数;2)记录源数据库与目标数据库两个数据库在同一功能时分别使用的关键字;3)具体sql需要转换时,选择当前sql的源数据库是Oracle还是PostgreSQL,然后根据sql中的关键字确认当前sql是属于上述四种数据库语言(数据定义语言DDL、数据查询语言DQL、数据操纵语言DML、数据控制语言DCL)中的哪种数据库语言,然后将有使用到的具体表名称、字段名称、字段类型、字段长度按照1)步骤替换对应目标数据库语句对应位置,源sql中关键字按照2)步骤替换成目标数据库中的关键字。
示例性地,对于函数类型转换,所述转移规则可以如下:1)记录源数据库与目标数据库中的数据同一功能所需要使用的函数名称及参数;2)进行数据转换时,直接把源数据库函数替换成目标函数即可。
可选地,所述根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则包括:
获取所述第一数据类型与所述第二数据类型的差异信息;
按照预设数据格式处理所述差异信息,得到结构化差异信息;
按照所述结构化差异信息确定所述目标数据迁移指标对应的转移规则。
其中,所述差异信息是指所述第一数据类型与所述第二数据类型中不同的属性信息。所述预设数据格式是指系统人员预先设置的用于结构化所述差异信息的格式。
S15,构建所述转移规则对应的转移代码。
在本申请的至少一实施例中,将所述转移规则编写成所述转移代码的形式,并调用所述转移代码对所述源数据库中的数据进行迁移,得到所述目标数据库中的数据。
可选地,所述构建所述转移规则对应的转移代码包括:
获取所述转移规则对应的多个执行条件;
确定所述执行条件间的逻辑运算关系;
根据所述执行条件与所述逻辑运算关系构建所述转移规则对应的转移代码。
其中,所述执行条件的数量可以为一个,也可以为多个,所述执行条件可以表示为条件函数,用于标识数据转移的条件信息,所述逻辑运算关系可以为包含若干逻辑运算符的关系,用于标识数据转移的公式。例如,对于字符串类型转换来说,所述执行条件可以为:所述源数据库可以为Oralce数据库,所述目标数据库为PostgreSQL数据库,一个长度为A的字符串由Oralce字符串类型转换为PostgreSQL字段串类型;对应的所述逻辑运算关系可以为:bA/a向上取整,在此不做赘述。
S16,确定所述待迁移数据项的迁移优先级,并调用所述转移代码按照所述迁移优先级进行数据迁移。
在本申请的至少一实施例中,所述迁移优先级是指所述待迁移数据项的迁移顺序,对于所述迁移优先级高的所述待迁移数据项,其迁移顺序靠前;对于所述迁移优先级低的所述待迁移数据项,其迁移顺序靠后。在一实施例中,所述迁移优先级可以是系统人员预先设置的。在其他实施例中,所述迁移优先级可以是通过深度学习的方式确定的。
可选地,所述确定所述待迁移数据项的迁移优先级包括:
获取所述待迁移数据项的重要程度值;
根据所述重要程度值确定所述待迁移数据库的初始迁移优先级;
检测所述初始迁移优先级对应的数据项间是否存在层级关联;
当检查结果为所述初始迁移优先级对应的数据项间存在所述层级关联时,根据所述层级关联调整所述初始迁移优先级,得到所述数据项间的目标迁移优先级。
其中,所述重要程度值可以是系统人员预先设置的,也可以是根据所述待迁移数据项的相关属性学习得到的,例如,预先训练重要程度计算模型并调用所述重要程度计算模型获取所述待迁移数据项的重要程度值。所述重要程度值与所述初始迁移优先级间存在映射关系,所述重要程度值越高,其对应的所述初始迁移优先级越高。所述层级关联是指所述数据项间的关联信息,例如,数据项间的关联关系可以是数据项之间的计算公式,即,通过计算公式来表现数据项间的数量关联关系,从而根据公式,使用某一个数据项中字段对应的内容或某几个数据项中字段对应的内容计算另一数据项中字段对应的内容。例如,数据项的字段间的关联关系为“B=DE”,当D和E字段对应的内容获取后,触发计算事件,得到B字段对应的内容。所述根据所述层级关联调整所述初始迁移优先级也即将同一层级关联的数据项设置同一迁移优先级。
本申请实施例提供的上述数据迁移方法,通过解析历史数据库转移日志,得到初始数据迁移指标,继而根据每一所述待迁移数据项的数据类型确定目标数据迁移指标,针对所述目标数据迁移指标进行具体数据迁移,既能够保证每个所述待迁移数据项的数据迁移准确性,又能够提高指标确定的效率,继而提高数据迁移的效率。本申请可应用于智慧政务、智慧交通等智慧城市的各个功能模块中,比如智慧政务的数据迁移模块等,能够促进智慧城市的快速发展。
图2是本申请实施例二提供的数据迁移装置的结构图。
在一些实施例中,所述数据迁移装置20可以包括多个由计算机程序段所组成的功能模块。所述数据迁移装置20中的各个程序段的计算机程序可以存储于计算机设备的存储器中,并由至少一个处理器所执行,以执行(详见图1描述)数据迁移的功能。
本实施例中,所述数据迁移装置20根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:数据项获取模块201、日志解析模块202、数据项解析模块203、规则确定模块204、代码构建模块205以及数据迁移模块206。本申请所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
所述数据项获取模块201用于获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项。
在本申请的至少一实施例中,所述源数据库是指数据迁出的数据库,所述目标数据库是指数据迁入的数据库,所述待迁移数据项是指所述源数据库中待迁出的数据项,所述目标迁移数据项是指所述目标数据库中待迁入的数据项。所述待迁移数据项与所述目标迁移数据项间存在映射关系,在一实施例中,对于每一所述待迁移数据项,均存在与之对应的所述目标迁移数据项。所述待迁移数据项是预先设置的数据项。对于所述源数据库来说,所述源数据库中可能存在N个数据项,其中,需要进行数据迁出的数据项的数量为K,K可以小于或者等于N,在此不做限制。
在一实施例中,建立所述源数据库与所述目标数据库的心跳连接,并将所述源数据库中的待迁移数据项相关信息添加至心跳包中,由所述源数据库发送至所述目标数据库中,当所述目标数据库接收到所述心跳包,解析所述心跳包,得到所述心跳包中的所述待迁移数据项的相关信息,并根据所述相关信息从所述目标数据库中匹配对应的所述目标迁移数据项,并将所述目标迁移数据项的相关信息添加至所述心跳包中,由所述目标数据库发送至所述源数据库中。本申请通过对所述源数据库与所述目标数据库建立心跳连接,既能够确定所述源数据库与所述目标数据库间的数据连接正常,又能够分别得到待迁移数据项与目标迁移数据项对应相关信息。其中,所述相关信息可以是指所述待迁移数据项与所述目标迁移数据项对应的数据属性等信息。
可选地,所述获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项包括:
获取所述源数据库中的第一标记,并确定所述第一标记对应的数据项为待迁移数据项;
获取所述待迁移数据项的第一数据名称以及所述目标数据库中数据项的第二数据名称;
确定与所述第一数据名称的文本相似度超过预设文本相似度阈值的第二数据名称对应的数据项为目标迁移数据项,并对所述目标迁移数据项添加第二标记。
其中,所述第一标记是指预先设置的用于标识待迁出数据的标记,所述第二标记是指匹配到的用于标识待迁入数据的标记。所述第一标记与所述第二标记可以为颜色标记、数字标记或字母标记,在此不做限制。在一实施例中,所述第二标记可以为系统人员根据所述第一标记预先设置的;在其他实施例中,所述第二标记可以通过文本相似度的方式确定,也即所述待迁移数据项的数据名称与所述目标迁移数据项的数据名称间的文本相似度超过预设文本相似度阈值,所述预设文本相似度阈值为预先设置的用于评估文本相似度的值。本申请通过文本相似度的方式确定与所述待迁移数据项对应的所述目标迁移数据项,能够提高所述目标迁移数据项确定的效率,继而提高数据迁移的效率。
所述日志解析模块202用于获取并解析历史数据库转移日志,得到初始数据迁移指标。
在本申请的至少一实施例中,所述历史数据库转移日志是指预设数据库中存储的任意不同数据库间进行数据迁移的日志信息,以数据库A与数据库B为例,所述历史数据库转移日志中包含数据库A与B的名称、数据库A与B中待迁出/待迁入数据的名称、数据库A与B中待迁出数据的数据类型以及数据迁移过程中需要进行数据调整的指标。考虑到数据存储的隐私性与可靠性,所述预设数据库可以为区块链中的目标节点。所述初始数据迁移指标也即从所述历史数据库转移日志中积累的关于数据迁移过程中需要进行数据调整的指标的相关信息。所述初始数据迁移指标中包含指标项以及各个所述指标项的层级关系。可以理解的是,随着所述历史数据库转移日志中记录的数据库越多,所述初始数据迁移指标越完整。
本申请首先通过对历史数据库转移日志进行解析,并依据解析结果构建初始数据迁移指标,继而便于根据所述待迁移数据项的第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标,避免人为根据待迁移数据项的第一数据类型设定数据迁移指标,能够提高目标数据迁移指标确定的准确性与效率,继而提高数据迁移的准确性与效率。
可选地,所述获取并解析历史数据库转移日志,得到初始数据迁移指标包括:
解析历史数据库转移日志,并检测所述历史数据库转移日志中是否存在预设关键词;
当检测结果为所述历史数据库转移日志中存在所述预设关键词时,获取所述预设关键词对应的目标信息;
解析所述目标信息,得到所述目标信息对应的指标项以及各个所述指标项的层级关系;
根据所述层级关系组合所述指标项,得到初始数据迁移指标。
其中,所述预设关键词是指系统人员预先设置用于标识数据迁移过程中需要进行数据调整的指标的关键词。所述目标信息是指数据迁移过程中需要进行数据调整的指标的信息,也即指标项信息,所述指标项信息可以包括指标项的名称以及指标项的层级关系等信息。在一实施例中,数据迁移过程中需要进行数据调整的指标的数量可能为1个,也可能为多个,当需要调整的指标的数量为多个时,也即所述指标项为多个时,解析所述目标信息,能够得到所述目标信息对应的指标项以及各个所述指标项的层级关系。
在一实施例中,所述指标项可以包括但不限于字段类型、字段长度、语法类型以及函数等方面,其中,当所述指标项为字段类型时,该指标项下还包括若干子指标项,例如,所述子指标项可以为字符串类型、数值类型、时间类型的转换,其中,数值类型转换的子指标项下还包含二级子指标项,例如,二级子指标项可以为整数数值类型转换、带小数数值类型转换。时间类型的转换的子指标项下还包含二级子指标项,例如,二级子指标项可以为不含时分秒时间类型转换、含时分秒时间类型转换。当所述指标项为语法类型时,该指标项下还包含若干子指标项,例如,所述子指标项可以为数据定义语言DDL、数据查询语言DQL、数据操纵语言DML、数据控制语言DCL等,在此不做限制。
所述数据项解析模块203用于解析所述待迁移数据项,得到所述待迁移数据项的第一数据类型,并根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标。
在本申请的至少一实施例中,所述第一数据类型是指所述待迁移数据项对应的数据类型,所述第一数据类型可以包含字段类型、字段长度类型、语法类型以及函数类型等信息。所述第一数据类型存储于所述待迁移数据项对应的数据日志中,通过解析所述数据日志的相关关键词,能够得到字段类型、字段长度类型、语法类型以及函数类型等信息。所述相关关键词是指字段类型、字段长度类型、语法类型以及函数类型等对应的关键词。
可选地,所述根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标包括:
获取所述第一数据类型对应的指标项信息;
匹配所述指标项信息与所述初始数据迁移指标,得到所述指标项信息之外的其余数据迁移指标;
从所述初始数据迁移指标中删除所述其余数据迁移指标,得到目标数据迁移指标。
其中,所述第一数据类型对应的指标项信息是指所述字段类型、字段长度类型、语法类型以及函数类型等指标对应的指标项内容。所述其余数据迁移指标是指所述初始数据迁移指标中多余的指标项,将多余的指标项从所述初始数据迁移指标中删除,能够得到所述待迁移数据项对应的目标数据迁移指标。
本申请通过对每一所述待迁移数据项进行数据类型分析,匹配与之对应的目标数据迁移指标,能够保证每个所述待迁移数据项的数据迁移的准确性,从而提高整体数据迁移的准确性。
在一实施例中,为了保证数据迁移的准确性,可以设置监控节点,并调用所述监控节点对数据迁移的过程进行监控,及时对数据迁移过程中出现差错进行预警。在一实施例中,可以针对每一所述待迁移数据项均设置监控节点。在其他实施例中,可以对有需要的所述待迁移数据项设置监控节点,既能够保证数据迁移的准确性,也能够避免设置过多节点导致的资源浪费。
可选地,在所述根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标之后,所述方法还包括:
获取所述待迁移数据项对应的历史迁移日志;
确定监控维度,并按照所述监控维度解析所述历史迁移日志,得到所述待迁移数据项对应的出错等级;
选取所述出错等级高于预设出错等级阈值的数据项作为目标待迁移数据项;
对所述目标待迁移数据项设置监控节点,并调用所述监控节点监控所述目标待迁移数据项的数据迁移过程。
其中,所述历史迁移日志是指所述待迁移数据项对应的数据迁移过程的日志,所述历史迁移日志中包含所述待迁移数据项的迁移信息,比如,数据迁移过程中的出错时间、出错原因等信息。所述监控维度是指预先设置的用于评估所述待迁移数据项是否需要进行监控的维度,例如,所述监控维度可以为出错频率或出错次数等维度,在此不做限制。所述目标待迁移数据项是指所述待迁移数据项中需要设置监控节点的数据项。
所述规则确定模块204用于解析所述目标迁移数据项,得到所述目标迁移数据项的第二数据类型,并根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则。
在本申请的至少一实施例中,所述第二数据类型是指所述目标迁移数据项对应的数据类型,所述第二数据类型可以包含字段类型、字段长度类型、语法类型以及函数类型等信息。所述第二数据类型存储于所述目标迁移数据项对应的数据日志中,通过解析所述数据日志的相关关键词,能够得到字段类型、字段长度类型、语法类型以及函数类型等信息。所述相关关键词是指字段类型、字段长度类型、语法类型以及函数类型等对应的关键词。所述转移规则是指用于进行数据迁移的规则,对于每一所述目标迁移数据项,均存在对应的转移规则。
在一实施例中,所述源数据库可以为Oralce数据库,所述目标数据库为PostgreSQL数据库。示例性地,对于字符串类型转换来说,所述转移规则可以如下:同一个字符串分别使用Oralce与PostgreSQL字段串类型存储时两者的长度比例为a:b,当一个长度为A的字符串由Oralce字符串类型转换为PostgreSQL字段串类型时,该字符串由PostgreSQL字段串类型存储对应的长度为:bA/a向上取整;当一个长度为A的字符串由PostgreSQL字段串类转换为Oralce字符串类型,该字符串由Oracle字段串类型存储对应的长度为:aA/b向上取整。
示例性地,对于带小数数值类型转换来说,所述转移规则可以如下:同一个整数数值分别使用Oralce与PostgreSQL数值类型存储时两者的长度比例为c:d,当一个整数部分长度为E,小数部分长度为F的带小数数值由Oralce数值类型转换为PostgreSQL数值类型时,该数值由PostgreSQL数值类型存储对应的整数部分长度为:dE/c向上取整,小数部分长度为:dF/c向上取整;当一个整数部分长度为E,小数部分长度为F的带小数数值由PostgreSQL数值类型转换为Oralce数值类型时,该数值由Oralce数值类型存储对应的整数部分长度为:cE/d向上取整,小数部分长度为:cF/d向上取整。
示例性地,对于语法类型转换(例如,所述语法类型转换可以为sql语法转换)来说,主要包含:数据定义语言DDL、数据查询语言DQL、数据操纵语言DML、数据控制语言DCL,所述转移规则可以如下:1)记录源数据库与目标数据库两个数据库使用同一类型数据库语言的语句,其中含有表名、字段名称、字段类型、字段长度的地方可作为参数;2)记录源数据库与目标数据库两个数据库在同一功能时分别使用的关键字;3)具体sql需要转换时,选择当前sql的源数据库是Oracle还是PostgreSQL,然后根据sql中的关键字确认当前sql是属于上述四种数据库语言(数据定义语言DDL、数据查询语言DQL、数据操纵语言DML、数据控制语言DCL)中的哪种数据库语言,然后将有使用到的具体表名称、字段名称、字段类型、字段长度按照1)步骤替换对应目标数据库语句对应位置,源sql中关键字按照2)步骤替换成目标数据库中的关键字。
示例性地,对于函数类型转换,所述转移规则可以如下:1)记录源数据库与目标数据库中的数据同一功能所需要使用的函数名称及参数;2)进行数据转换时,直接把源数据库函数替换成目标函数即可。
可选地,所述根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则包括:
获取所述第一数据类型与所述第二数据类型的差异信息;
按照预设数据格式处理所述差异信息,得到结构化差异信息;
按照所述结构化差异信息确定所述目标数据迁移指标对应的转移规则。
其中,所述差异信息是指所述第一数据类型与所述第二数据类型中不同的属性信息。所述预设数据格式是指系统人员预先设置的用于结构化所述差异信息的格式。
所述代码构建模块205用于构建所述转移规则对应的转移代码。
在本申请的至少一实施例中,将所述转移规则编写成所述转移代码的形式,并调用所述转移代码对所述源数据库中的数据进行迁移,得到所述目标数据库中的数据。
可选地,所述构建所述转移规则对应的转移代码包括:
获取所述转移规则对应的多个执行条件;
确定所述执行条件间的逻辑运算关系;
根据所述执行条件与所述逻辑运算关系构建所述转移规则对应的转移代码。
其中,所述执行条件的数量可以为一个,也可以为多个,所述执行条件可以表示为条件函数,用于标识数据转移的条件信息,所述逻辑运算关系可以为包含若干逻辑运算符的关系,用于标识数据转移的公式。例如,对于字符串类型转换来说,所述执行条件可以为:所述源数据库可以为Oralce数据库,所述目标数据库为PostgreSQL数据库,一个长度为A的字符串由Oralce字符串类型转换为PostgreSQL字段串类型;对应的所述逻辑运算关系可以为:bA/a向上取整,在此不做赘述。
所述数据迁移模块206用于确定所述待迁移数据项的迁移优先级,并调用所述转移代码按照所述迁移优先级进行数据迁移。
在本申请的至少一实施例中,所述迁移优先级是指所述待迁移数据项的迁移顺序,对于所述迁移优先级高的所述待迁移数据项,其迁移顺序靠前;对于所述迁移优先级低的所述待迁移数据项,其迁移顺序靠后。在一实施例中,所述迁移优先级可以是系统人员预先设置的。在其他实施例中,所述迁移优先级可以是通过深度学习的方式确定的。
可选地,所述确定所述待迁移数据项的迁移优先级包括:
获取所述待迁移数据项的重要程度值;
根据所述重要程度值确定所述待迁移数据库的初始迁移优先级;
检测所述初始迁移优先级对应的数据项间是否存在层级关联;
当检查结果为所述初始迁移优先级对应的数据项间存在所述层级关联时,根据所述层级关联调整所述初始迁移优先级,得到所述数据项间的目标迁移优先级。
其中,所述重要程度值可以是系统人员预先设置的,也可以是根据所述待迁移数据项的相关属性学习得到的,例如,预先训练重要程度计算模型并调用所述重要程度计算模型获取所述待迁移数据项的重要程度值。所述重要程度值与所述初始迁移优先级间存在映射关系,所述重要程度值越高,其对应的所述初始迁移优先级越高。所述层级关联是指所述数据项间的关联信息,例如,数据项间的关联关系可以是数据项之间的计算公式,即,通过计算公式来表现数据项间的数量关联关系,从而根据公式,使用某一个数据项中字段对应的内容或某几个数据项中字段对应的内容计算另一数据项中字段对应的内容。例如,数据项的字段间的关联关系为“B=DE”,当D和E字段对应的内容获取后,触发计算事件,得到B字段对应的内容。所述根据所述层级关联调整所述初始迁移优先级也即将同一层级关联的数据项设置同一迁移优先级。
参阅图3所示,为本申请实施例三提供的计算机设备的结构示意图。在本申请较佳实施例中,所述计算机设备3包括存储器31、至少一个处理器32、至少一条通信总线33及收发器34。
本领域技术人员应该了解,图3示出的计算机设备的结构并不构成本申请实施例的限定,既可以是总线型结构,也可以是星形结构,所述计算机设备3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
在一些实施例中,所述计算机设备3是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。所述计算机设备3还可包括客户设备,所述客户设备包括但不限于任何一种可与客户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、数码相机等。
需要说明的是,所述计算机设备3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本申请,也应包含在本申请的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器31中存储有计算机程序,所述计算机程序被所述至少一个处理器32执行时实现如所述的数据迁移方法中的全部或者部分步骤。所述存储器31包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-OnlyMemory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
在一些实施例中,所述至少一个处理器32是所述计算机设备3的控制核心(Control Unit),利用各种接口和线路连接整个计算机设备3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行计算机设备3的各种功能和处理数据。例如,所述至少一个处理器32执行所述存储器中存储的计算机程序时实现本申请实施例中所述的数据迁移方法的全部或者部分步骤;或者实现数据迁移装置的全部或者部分功能。所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。
在一些实施例中,所述至少一条通信总线33被设置为实现所述存储器31以及所述至少一个处理器32等之间的连接通信。
尽管未示出,所述计算机设备3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述计算机设备3还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,计算机设备,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的部分。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。说明书中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本申请的技术方案而非限制,尽管参照较佳实施例对本申请进行了详细说明,本领域的普通技术人员应当理解,可以对本申请的技术方案进行修改或等同替换,而不脱离本申请技术方案的精神和范围。
Claims (10)
1.一种数据迁移方法,其特征在于,所述数据迁移方法包括:
获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项;
获取并解析历史数据库转移日志,得到初始数据迁移指标;
解析所述待迁移数据项,得到所述待迁移数据项的第一数据类型,并根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标;
解析所述目标迁移数据项,得到所述目标迁移数据项的第二数据类型,并根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则;
构建所述转移规则对应的转移代码;
确定所述待迁移数据项的迁移优先级,并调用所述转移代码按照所述迁移优先级进行数据迁移。
2.根据权利要求1所述的数据迁移方法,其特征在于,所述获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项包括:
获取所述源数据库中的第一标记,并确定所述第一标记对应的数据项为待迁移数据项;
获取所述待迁移数据项的第一数据名称以及所述目标数据库中数据项的第二数据名称;
确定与所述第一数据名称的文本相似度超过预设文本相似度阈值的第二数据名称对应的数据项为目标迁移数据项,并对所述目标迁移数据项添加第二标记。
3.根据权利要求1所述的数据迁移方法,其特征在于,所述获取并解析历史数据库转移日志,得到初始数据迁移指标包括:
解析历史数据库转移日志,并检测所述历史数据库转移日志中是否存在预设关键词;
当检测结果为所述历史数据库转移日志中存在所述预设关键词时,获取所述预设关键词对应的目标信息;
解析所述目标信息,得到所述目标信息对应的指标项以及各个所述指标项的层级关系;
根据所述层级关系组合所述指标项,得到初始数据迁移指标。
4.根据权利要求3所述的数据迁移方法,其特征在于,所述根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标包括:
获取所述第一数据类型对应的指标项信息;
匹配所述指标项信息与所述初始数据迁移指标,得到所述指标项信息之外的其余数据迁移指标;
从所述初始数据迁移指标中删除所述其余数据迁移指标,得到目标数据迁移指标。
5.根据权利要求1所述的数据迁移方法,其特征在于,在所述根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标之后,所述方法还包括:
获取所述待迁移数据项对应的历史迁移日志;
确定监控维度,并按照所述监控维度解析所述历史迁移日志,得到所述待迁移数据项对应的出错等级;
选取所述出错等级高于预设出错等级阈值的数据项作为目标待迁移数据项;
对所述目标待迁移数据项设置监控节点,并调用所述监控节点监控所述目标待迁移数据项的数据迁移过程。
6.根据权利要求1所述的数据迁移方法,其特征在于,所述根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则包括:
获取所述第一数据类型与所述第二数据类型的差异信息;
按照预设数据格式处理所述差异信息,得到结构化差异信息;
按照所述结构化差异信息确定所述目标数据迁移指标对应的转移规则。
7.根据权利要求1所述的数据迁移方法,其特征在于,所述构建所述转移规则对应的转移代码包括:
获取所述转移规则对应的多个执行条件;
确定所述执行条件间的逻辑运算关系;
根据所述执行条件与所述逻辑运算关系构建所述转移规则对应的转移代码。
8.一种数据迁移装置,其特征在于,所述数据迁移装置包括:
数据项获取模块,用于获取源数据库中的待迁移数据项与目标数据库中的目标迁移数据项;
日志解析模块,用于获取并解析历史数据库转移日志,得到初始数据迁移指标;
数据项解析模块,用于解析所述待迁移数据项,得到所述待迁移数据项的第一数据类型,并根据所述第一数据类型调整所述初始数据迁移指标,得到目标数据迁移指标;
规则确定模块,用于解析所述目标迁移数据项,得到所述目标迁移数据项的第二数据类型,并根据所述第二数据类型确定所述目标数据迁移指标对应的转移规则;
代码构建模块,用于构建所述转移规则对应的转移代码;
数据迁移模块,用于确定所述待迁移数据项的迁移优先级,并调用所述转移代码按照所述迁移优先级进行数据迁移。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至7中任意一项所述数据迁移方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任意一项所述数据迁移方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210060462.7A CN114398345A (zh) | 2022-01-19 | 2022-01-19 | 数据迁移方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210060462.7A CN114398345A (zh) | 2022-01-19 | 2022-01-19 | 数据迁移方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114398345A true CN114398345A (zh) | 2022-04-26 |
Family
ID=81231323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210060462.7A Pending CN114398345A (zh) | 2022-01-19 | 2022-01-19 | 数据迁移方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114398345A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116467372A (zh) * | 2023-02-21 | 2023-07-21 | 中国人民解放军海军工程大学 | 一种数据库自动转换方法、装置、电子设备及存储介质 |
-
2022
- 2022-01-19 CN CN202210060462.7A patent/CN114398345A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116467372A (zh) * | 2023-02-21 | 2023-07-21 | 中国人民解放军海军工程大学 | 一种数据库自动转换方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112445854B (zh) | 多源业务数据实时处理方法、装置、终端及存储介质 | |
CN104036365A (zh) | 一种企业级数据服务平台建设方法 | |
CN112364107A (zh) | 系统分析可视化方法、装置、电子设备及计算机可读存储介质 | |
CN111754123B (zh) | 数据监控方法、装置、计算机设备及存储介质 | |
CN111400130A (zh) | 任务监控方法、装置、电子设备及存储介质 | |
CN114663223A (zh) | 基于人工智能的信用风险评估方法、装置及相关设备 | |
CN114610747A (zh) | 数据查询方法、装置、设备及存储介质 | |
CN110825526B (zh) | 基于er关系的分布式调度方法及装置、设备以及存储介质 | |
CN112612462A (zh) | 话术配置调整方法、装置、电子设备及存储介质 | |
CN111986765A (zh) | 电子病例实体标记方法、装置、计算机设备及存储介质 | |
CN112102011A (zh) | 基于人工智能的用户等级预测方法、装置、终端及介质 | |
CN114398345A (zh) | 数据迁移方法、装置、计算机设备及存储介质 | |
CN114201212A (zh) | 配置文件处理方法、装置、计算机设备及存储介质 | |
CN114220541A (zh) | 疾病预测方法、装置、电子设备及存储介质 | |
CN112948275A (zh) | 测试数据生成方法、装置、设备及存储介质 | |
CN114239538A (zh) | 断言处理方法、装置、计算机设备及存储介质 | |
CN113722324B (zh) | 基于人工智能的报表生成方法、装置、电子设备及介质 | |
CN114416695A (zh) | 数据拼接功能迁移方法、装置、计算机设备及存储介质 | |
CN116108276A (zh) | 基于人工智能的信息推荐方法、装置及相关设备 | |
CN114201328A (zh) | 基于人工智能的故障处理方法、装置、电子设备及介质 | |
CN115237706A (zh) | 埋点数据处理方法、装置、电子设备及存储介质 | |
CN114741459A (zh) | 基于人工智能的数据查询方法、装置、电子设备及介质 | |
CN114881313A (zh) | 基于人工智能的行为预测方法、装置及相关设备 | |
CN113127428A (zh) | 数据批量导入方法、装置及相关设备 | |
CN113590825A (zh) | 文本质检方法、装置及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |