CN111581184B - 基于数据库迁移的语义对比方法及装置 - Google Patents
基于数据库迁移的语义对比方法及装置 Download PDFInfo
- Publication number
- CN111581184B CN111581184B CN202010337700.5A CN202010337700A CN111581184B CN 111581184 B CN111581184 B CN 111581184B CN 202010337700 A CN202010337700 A CN 202010337700A CN 111581184 B CN111581184 B CN 111581184B
- Authority
- CN
- China
- Prior art keywords
- database
- metadata
- type
- source
- target
- 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.)
- Active
Links
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
-
- 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/24—Querying
- G06F16/245—Query processing
-
- 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/25—Integrating or interfacing systems involving database management systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于数据库迁移的语义对比方法及装置,基于数据库迁移的语义对比方法包括:获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型;分析所述元数据内容,以生成内容分析结果;根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义。本发明提供的基于数据库迁移的语义对比方法及装置,克服了现有技术中,多数据库迁移过程中语义对比具有低效率、高出错率、且需要依赖于技术人员以及不易重复的弊端。
Description
技术领域
本发明涉及信息技术领域,特别是涉及一种基于数据库迁移的语义对比方法及装置。
背景技术
目前在金融和通讯领域,数据库种类多种多样,企业在采用新数据库产品代替旧数据库产品时,数据库迁移工作涉及到数据库数据迁移和数据库元数据(存储过程、视图、函数、序列)迁移,迁移源数据库与目标数据库分为相同数据库类型的元数据迁移和不同数据库类型的元数据迁移。
传统数据库元数据的迁移都是基于同种类型数据库的迁移,该方式相对简单易实现。但对于金融和通讯领域不同类型数据库元数据迁移,由于其规模巨大,单单靠传统人力显然是不满足时效性需求也是不切合实际的迁移方案,且目前对于不同类型数据库元数据迁移自动迁移是个空白。
发明内容
针对现有技术中的问题,本发明提供的基于数据库迁移的语义对比方法及装置,克服了现有技术中,多数据库迁移过程中语义对比具有低效率、高出错率、且需要依赖于技术人员以及不易重复的弊端。
为解决上述技术问题,本发明提供以下技术方案:
第一方面,本发明提供一种基于数据库迁移的语义对比方法,包括:
获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型;
分析所述元数据内容,以生成内容分析结果;
根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义。
一实施例中,所述分析所述元数据内容包括:
将所述元数据进行断句,并将断句结果存储至映射键值对集中;
将所述映射键值对集封装至源队列中;
将所述源队列中的关键字与目标数据库中的关键字进行匹配;
将匹配后的关键字封装至目标数据库中的映射键值对集中,并将所述目标数据库中的映射键值对集封装至目标数据库中的源队列中;
根据所述目标数据库中的源队列生成分析语句,以对所述元数据进行分析。
一实施例中,所述将所述元数据进行断句包括:
根据断句分隔符以及断词分隔符将所述元数据进行断句。
一实施例中,所述断句分隔符为分号;所述断词分隔符为空格。
第二方面,本发明提供一种基于数据库迁移的语义对比装置,该装置包括:
类型获取单元,用于获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型;
元数据分析单元,用于分析所述元数据内容,以生成内容分析结果;
语义对比单元,用于根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义。
一实施例中,所述元数据分析单元包括:
断句模块,用于将所述元数据进行断句,并将断句结果存储至映射键值对集中;
第一封装模块,用于将所述映射键值对集封装至源队列中;
关键词匹配模块,用于将所述源队列中的关键字与目标数据库中的关键字进行匹配;
第二封装模块,用于将匹配后的关键字封装至目标数据库中的映射键值对集中,并将所述目标数据库中的映射键值对集封装至目标数据库中的源队列中;
分析语句生成单元,用于根据所述目标数据库中的源队列生成分析语句,以对所述元数据进行分析。
一实施例中,所述关键词匹配模块具体用于根据断句分隔符以及断词分隔符将所述元数据进行断句。
一实施例中,所述断句分隔符为分号;所述断词分隔符为空格。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现基于数据库迁移的语义对比方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现基于数据库迁移的语义对比方法的步骤。
从上述描述可知,本发明实施例提供的基于数据库迁移的语义对比方法及装置,首先获取源数据库类型、源数据库中元数据类型以及目标数据库类型;接着,分析元数据内容,以生成内容分析结果;最后根据源数据库类型、源数据库中元数据类型、目标数据库类型以及内容分析结果对比源数据库与目标数据库中的语义。本发明克服了现有技术中,多数据库迁移过程中语义对比具有低效率、高出错率、且需要依赖于技术人员以及不易重复的弊端。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的实施例中基于数据库迁移的语义对比方法流程示意图;
图2为本发明的实施例中基于数据库迁移的语义对比方法步骤200的流程示意图;
图3为本发明的实施例中基于数据库迁移的语义对比方法步骤201的流程示意图;
图4为本发明的具体应用实例中基于数据库迁移的语义对比方法的流程示意图;
图5为本发明的具体应用实例中基于数据库迁移的语义对比方法的思维导图;
图6为本发明的具体应用实例中源数据库元数据拆分示意图;
图7为本发明的具体应用实例中目标数据库元数据翻译示意图;
图8为本发明的具体应用实例中语句翻译示意图;
图9为本发明的具体应用实例中基于数据库迁移的语义对比装置的结构示意图;
图10为本发明的具体应用实例中元数据分析单元的结构示意图;
图11为本发明的实施例中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
鉴于现有技术中针对金融领域中,数据库迁移前后语义对比方式为针对整个数据库数据的比较,此种方式耗时较高且不易精确。基于此,本发明的实施例提供一种基于数据库迁移的语义对比方法的具体实施方式,参见图1,该方法具体包括如下内容:
步骤100:获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型。
步骤100在实施时,可以提供给客户端的一种便于用户编辑的文本模板(EXCEL、XML格式等),进而为用户提供了连接数据源的配置,用户只需在给定字典中填写具体的数据库类型、元数据类型、目标数据库类型。
步骤200:分析所述元数据内容,以生成内容分析结果。
可以理解的是,步骤200中的元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。是一种电子式目录,为了达到编制目录的目的,描述并收藏数据内容,进而达成协助数据检索的目的。元数据是关于数据的组织、数据域及其关系的信息,简言之,元数据就是关于数据的数据。
步骤300:根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义。
具体地,首先根据源数据库类型、所述源数据库中元数据类型适配对应的数据库,并且配置连接池,接着根据配置好的连接池以及目标数据库类型,确定目标数据库。接着,将步骤200生成的内容分析结果进行编译执行(分析语句),从而得到一个目标数据库上的元数据对象。至此完成一个元数据的分析。遍历该类型其它元数据,循环执行以上步骤,直至源数据库中该元数据类型的所有元数据被翻译完成后在目标中执行成功,即可完成数据库迁移前后的多个数据库中的语义对比。
从上述描述可知,本发明实施例提供的基于数据库迁移的语义对比方法,首先获取源数据库类型、源数据库中元数据类型以及目标数据库类型;接着,分析元数据内容,以生成内容分析结果;最后根据源数据库类型、源数据库中元数据类型、目标数据库类型以及内容分析结果对比源数据库与目标数据库中的语义。本发明通过让用户提供待迁移源数据库类型、元数据、目标数据库类型,即可以将源数据库中的元数据库通过“语义”解析“映射”到目标数据库中,从而提高数据库元数据迁移的效率、提升语义对比精确度、节约迁移成本。填补不同种类型数据库元数据自动迁移的空白,克服不同种类型数据库元数据迁移过程中,对于迁移前后语义对比依靠手工迁移、效率低、依靠开发人员的个人技术等不足。
一实施例中,参见图2,步骤200具体包括:
步骤201:将所述元数据进行断句,并将断句结果存储至映射键值对集中。
优选地,以强类型的方式对元数据进行断句,可以理解的是,以这种方式进行断句在更新的过程中会很少出现问题,即使出现问题也很容判断是那个字段赋值出错(字符串长度超过数据库字段长度;传进去的日期类型是否格式正确)。
步骤202:将所述映射键值对集封装至源队列中。
步骤203:将所述源队列中的关键字与目标数据库中的关键字进行匹配。
步骤204:将匹配后的关键字封装至目标数据库中的映射键值对集中,并将所述目标数据库中的映射键值对集封装至目标数据库中的源队列中。
在步骤202至步骤204中,以“分号”作为断句分隔符,以“空格”作为断词分隔符,先将元数据“断句”后存储到一个映射键值对集(源Map)中,再将源Map封装到源队列(源List)中,遍历存储中的所有元数据,依次完成上述操作,完成对元数据语义的分割动作。接着,连接目标数据库关键字库,同时读取源List中的源Map,拿到源Map中的关键字,同时拿该关键字去目标数据库中匹配目标数据库中的关键字,再将关键字一次封装到目标Map中,同时将目标Map再次封装到目标List,完成对目标数据库的关键字的封装动作。
步骤205:根据所述目标数据库中的源队列生成分析语句,以对所述元数据进行分析。
具体地,读取目标List中的第一个目标Map(目标数据中的源Map),逐一获取关键字后再次拼装目标数据库可执行分析语句,以完成翻译动作。
一实施例中,参见图3,步骤201具体包括:
步骤2011:根据断句分隔符以及断词分隔符将所述元数据进行断句。
优选地,可以以“分号”作为断句分隔符,以“空格”作为断词分隔符,将元数据进行断句。
一实施例中,步骤300具体包括:
步骤301:根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型确定目标数据库。
具体地,根据源数据库类型、所述源数据库中元数据类型适配对应的数据库,并配置连接池,接着根据配置好的连接池以及目标数据库类型,确定目标数据库,从而完成对源数据库和目标数据库的可读、可写、可执行的准备工作。
步骤302:根据源数据库、目标数据以及所述内容分析结果对比源数据库与目标数据库中的语义。
具体地,将内容分析结果进行编译执行(分析语句),从而得到一个目标数据库上的元数据对象。至此完成一个元数据的分析。遍历该类型其它元数据,循环执行以上步骤,直至源数据库中该元数据类型的所有元数据被翻译完成后在目标中执行成功,即可完成数据库迁移前后的多个数据库中的语义对比。
从上述描述可知,本发明实施例提供的基于数据库迁移的语义对比方法,首先获取源数据库类型、源数据库中元数据类型以及目标数据库类型;接着,分析元数据内容,以生成内容分析结果;最后根据源数据库类型、源数据库中元数据类型、目标数据库类型以及内容分析结果对比源数据库与目标数据库中的语义。本发明通过让用户提供待迁移源数据库类型、元数据、目标数据库类型,即可以将源数据库中的元数据库通过“语义”解析“映射”到目标数据库中,从而提高数据库元数据迁移的效率、提升语义对比精确度、节约迁移成本。填补不同种类型数据库元数据自动迁移的空白,克服不同种类型数据库元数据迁移过程中,对于语义对比具有依靠手工迁移、效率低、以及需要依靠开发人员的个人经验等缺点。
为进一步地说明本方案,本发明以银行系统为例(用户的账户信息功能在数据库由Oracle迁移到PostgreSQL过程),提供基于数据库迁移的语义对比方法的具体应用实例,该具体应用实例具体包括如下内容,参见图4以及图5。
参见图5,在本具体应用实例中,首先读取由客户提供的配置文件,然后分析一元数据,并翻译该元数据,并逐一获取关键字后再次拼装目标库可执行语句,以完成翻译动作,最后遍历该类型其它元数据,直至源库中该元数据类型的所有元数据被翻译完成后在目标中执行成功。
S0:获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型。
提供给客户端的是一种便于用户编辑的文本模板,支持EXCEL、XML两种格式,用户只需在给定字典中填写具体的数据库类型、元数据类型、目标数据库类型,本具体应用实例配置文件用XML形式,具体实施代码如下。
S1:分析所述元数据内容,以生成内容分析结果。
在SQL标准中以“分号”作为断句分隔符,以“空格”作为断词分隔符,先将元数据“断句”后存储到一个源Map中,再将源Map封装到源List中,遍历整个存储过程,完成对元数据语义的分割动作,参见图6。
同时连接目标数据库关键字库,同时读取源List中的源Map,拿到源Map中的关键字,同时拿该关键字去目标数据库中匹配目标数据库中的关键字,再将关键字一次封装到目标Map中,同时将目标Map再次封装到目标List,完成对目标关键字的封装动作,参见图7。读取目标数据中List中的第一个目标Map,逐一拿到关键字后再次拼装目标数据库可执行SQL语句,完成翻译动作,具体地,首先获取待翻译语句,将翻译语句中的元数据拆分成SQL语句,并进一步获取SQL语句中的SQL关键字,并依据该关键字在目标库词库中进行匹配,接着,按顺序组合已拆分SQL语句为目标库元数据,最后将已翻译元数据在目标库中执行,以完成翻译操作,参见图8。
S2:根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义。
将翻译后语句在目标数据库上编译执行,得到一个目标数据库上的元数据对象。至此完成一个元数据的分析。遍历该类型其它元数据,同时循环执行以上步骤,直至源数据库中该元数据类型的所有元数据被翻译完成后在目标中执行成功,具体实施代码如下。
从上述描述可知,本发明实施例提供的基于数据库迁移的语义对比方法,首先获取源数据库类型、源数据库中元数据类型以及目标数据库类型;接着,分析元数据内容,以生成内容分析结果;最后根据源数据库类型、源数据库中元数据类型、目标数据库类型以及内容分析结果对比源数据库与目标数据库中的语义。本发明通过让用户提供待迁移源数据库类型、元数据、目标数据库类型,即可以将源数据库中的元数据库通过“语义”解析“映射”到目标数据库中,从而提高数据库元数据迁移的效率、提升语义对比精确度、节约迁移成本。填补不同种类型数据库元数据自动迁移的空白,克服不同种类型数据库元数据迁移过程中,对于迁移前后语义对比依靠手工迁移、效率低、依靠开发人员的个人技术等不足。具体地,本发明的有益效果如下:
1.操作简单:通过一种简单的装置用户仅需填写源库类型、源库地址、源库实例、迁移元数据类型、目标库类型、目标库地址,其它无需填写,对技术人员要求低;
2.效率高:该装置可部署在任意一台数据库服务器上,资源占用率低,配置要求低,可以直接采用PC机作为该工具的运行环境,资源要求成本低;
3.扩展性好:可支持不同类型数据库之间元数据的迁移;
4.复用性高:可提供多种场景的数据库元数据迁移;
5.成本低:无需使用人员具备专业的技术能力,仅需使用人明确源库和目标库类型、待迁移元数据类型即可,无需过多专业知识;
6.产出高:因无需专业技术人员进行代码编写,仅需在给定模板中填写具体信息即可,支持在短时间内大批量元数据的迁移;
7.支持在线迁移:可以在不停机的情况下进行在线元数据迁移,这对生产服务器时效性要求较高的金融和通信业领域提供了极大的便利。
综上,本发明实施例提供了一种可以自动化、高效率、精确、在线迁移且不停机的数据库迁移的语义对比方法。
基于同一发明构思,本申请实施例还提供了基于数据库迁移的语义对比装置,可以用于实现上述实施例所描述的方法,如下面的实施例。由于基于数据库迁移的语义对比装置解决问题的原理与基于数据库迁移的语义对比方法相似,因此基于数据库迁移的语义对比装置的实施可以参见基于数据库迁移的语义对比方法实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本发明的实施例提供一种能够实现基于数据库迁移的语义对比方法的基于数据库迁移的语义对比装置的具体实施方式,参见图9,基于数据库迁移的语义对比装置具体包括如下内容:
类型获取单元10,用于获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型;
元数据分析单元20,用于分析所述元数据内容,以生成内容分析结果;
语义对比单元30,用于根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义。
一实施例中,参见图10,所述元数据分析单元20包括:
断句模块201,用于将所述元数据进行断句,并将断句结果存储至映射键值对集中;
第一封装模块202,用于将所述映射键值对集封装至源队列中;
关键词匹配模块203,用于将所述源队列中的关键字与目标数据库中的关键字进行匹配;
第二封装模块204,用于将匹配后的关键字封装至目标数据库中的映射键值对集中,并将所述目标数据库中的映射键值对集封装至目标数据库中的源队列中;
分析语句生成单元205,用于根据所述目标数据库中的源队列生成分析语句,以对所述元数据进行分析。
一实施例中,所述关键词匹配模块具体用于根据断句分隔符以及断词分隔符将所述元数据进行断句。
一实施例中,所述断句分隔符为分号;所述断词分隔符为空格。
从上述描述可知,本发明实施例提供的基于数据库迁移的语义对比装置,首先获取源数据库类型、源数据库中元数据类型以及目标数据库类型;接着,分析元数据内容,以生成内容分析结果;最后根据源数据库类型、源数据库中元数据类型、目标数据库类型以及内容分析结果对比源数据库与目标数据库中的语义。本发明通过让用户提供待迁移源数据库类型、元数据、目标数据库类型,即可以将源数据库中的元数据库通过“语义”解析“映射”到目标数据库中,从而提高数据库元数据迁移的效率、提升语义对比精确度、节约迁移成本。填补不同种类型数据库元数据自动迁移的空白,克服不同种类型数据库元数据迁移过程中,对于迁移前后语义对比依靠手工迁移、效率低、依靠开发人员的个人技术等不足。具体地,本发明的有益效果如下:
1.操作简单:通过一种简单的装置用户仅需填写源库类型、源库地址、源库实例、迁移元数据类型、目标库类型、目标库地址,其它无需填写,对技术人员要求低;
2.效率高:该装置可部署在任意一台数据库服务器上,资源占用率低,配置要求低,可以直接采用PC机作为该工具的运行环境,资源要求成本低;
3.扩展性好:可支持不同类型数据库之间元数据的迁移;
4.复用性高:可提供多种场景的数据库元数据迁移;
5.成本低:无需使用人员具备专业的技术能力,仅需使用人明确源库和目标库类型、待迁移元数据类型即可,无需过多专业知识;
6.产出高:因无需专业技术人员进行代码编写,仅需在给定模板中填写具体信息即可,支持在短时间内大批量元数据的迁移;
7.支持在线迁移:可以在不停机的情况下进行在线元数据迁移,这对生产服务器时效性要求较高的金融和通信业领域提供了极大的便利。
综上,本发明实施例提供了一种可以自动化、高效率、精确、在线迁移且不停机的数据库迁移的语义对比装置。
本申请的实施例还提供能够实现上述实施例中的基于数据库迁移的语义对比方法中全部步骤的一种电子设备的具体实施方式,参见图11,电子设备具体包括如下内容:
处理器(processor)1201、存储器(memory)1202、通信接口(CommunicationsInterface)1203和总线1204;
其中,处理器1201、存储器1202、通信接口1203通过总线1204完成相互间的通信;通信接口1203用于实现服务器端设备、接口设备以及用户端设备等相关设备之间的信息传输。
处理器1201用于调用存储器1202中的计算机程序,处理器执行计算机程序时实现上述实施例中的基于数据库迁移的语义对比方法中的全部步骤,例如,处理器执行计算机程序时实现下述步骤:
步骤100:获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型。
步骤200:分析所述元数据内容,以生成内容分析结果。
步骤300:根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义。
从上述描述可知,本申请实施例中的电子设备,首先获取源数据库类型、源数据库中元数据类型以及目标数据库类型;接着,分析元数据内容,以生成内容分析结果;最后根据源数据库类型、源数据库中元数据类型、目标数据库类型以及内容分析结果对比源数据库与目标数据库中的语义。本发明通过让用户提供待迁移源数据库类型、元数据、目标数据库类型,即可以将源数据库中的元数据库通过“语义”解析“映射”到目标数据库中,从而提高数据库元数据迁移的效率、提升语义对比精确度、节约迁移成本。填补不同种类型数据库元数据自动迁移的空白,克服不同种类型数据库元数据迁移过程中,对于迁移前后语义对比依靠手工迁移、效率低、依靠开发人员的个人技术等不足。具体地,本发明的有益效果如下:
1.操作简单:通过一种简单的装置用户仅需填写源库类型、源库地址、源库实例、迁移元数据类型、目标库类型、目标库地址,其它无需填写,对技术人员要求低;
2.效率高:该装置可部署在任意一台数据库服务器上,资源占用率低,配置要求低,可以直接采用PC机作为该工具的运行环境,资源要求成本低;
3.扩展性好:可支持不同类型数据库之间元数据的迁移;
4.复用性高:可提供多种场景的数据库元数据迁移;
5.成本低:无需使用人员具备专业的技术能力,仅需使用人明确源库和目标库类型、待迁移元数据类型即可,无需过多专业知识;
6.产出高:因无需专业技术人员进行代码编写,仅需在给定模板中填写具体信息即可,支持在短时间内大批量元数据的迁移;
7.支持在线迁移:可以在不停机的情况下进行在线元数据迁移,这对生产服务器时效性要求较高的金融和通信业领域提供了极大的便利。
综上,本发明实施例提供了一种可以自动化、高效率、精确、在线迁移且不停机的电子设备。
本申请的实施例还提供能够实现上述实施例中的基于数据库迁移的语义对比方法中全部步骤的一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的基于数据库迁移的语义对比方法的全部步骤,例如,处理器执行计算机程序时实现下述步骤:
步骤100:获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型。
步骤200:分析所述元数据内容,以生成内容分析结果。
步骤300:根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义。
从上述描述可知,本申请实施例中的计算机可读存储介质,首先获取源数据库类型、源数据库中元数据类型以及目标数据库类型;接着,分析元数据内容,以生成内容分析结果;最后根据源数据库类型、源数据库中元数据类型、目标数据库类型以及内容分析结果对比源数据库与目标数据库中的语义。本发明通过让用户提供待迁移源数据库类型、元数据、目标数据库类型,即可以将源数据库中的元数据库通过“语义”解析“映射”到目标数据库中,从而提高数据库元数据迁移的效率、提升语义对比精确度、节约迁移成本。填补不同种类型数据库元数据自动迁移的空白,克服不同种类型数据库元数据迁移过程中,对于迁移前后语义对比依靠手工迁移、效率低、依靠开发人员的个人技术等不足。具体地,本发明的有益效果如下:
1.操作简单:通过一种简单的装置用户仅需填写源库类型、源库地址、源库实例、迁移元数据类型、目标库类型、目标库地址,其它无需填写,对技术人员要求低;
2.效率高:该装置可部署在任意一台数据库服务器上,资源占用率低,配置要求低,可以直接采用PC机作为该工具的运行环境,资源要求成本低;
3.扩展性好:可支持不同类型数据库之间元数据的迁移;
4.复用性高:可提供多种场景的数据库元数据迁移;
5.成本低:无需使用人员具备专业的技术能力,仅需使用人明确源库和目标库类型、待迁移元数据类型即可,无需过多专业知识;
6.产出高:因无需专业技术人员进行代码编写,仅需在给定模板中填写具体信息即可,支持在短时间内大批量元数据的迁移;
7.支持在线迁移:可以在不停机的情况下进行在线元数据迁移,这对生产服务器时效性要求较高的金融和通信业领域提供了极大的便利。
综上,本发明实施例提供了一种可以自动化、高效率、精确、在线迁移且不停机的计算机可读存储介质。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
虽然本申请提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于数据库迁移的语义对比方法,其特征在于,包括:
获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型;
分析元数据内容,以生成内容分析结果;
根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义;
所述根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义,包括:
根据源数据库类型、所述源数据库中元数据类型适配对应的数据库,并且配置连接池,根据配置好的连接池以及目标数据库类型,确定目标数据库;将所述内容分析结果进行编译执行,得到一个目标数据库上的元数据对象;至此完成一个元数据的分析;遍历该类型其它元数据,循环执行以上步骤,直至源数据库中该元数据类型的所有元数据被翻译完成后在目标中执行成功,以完成数据库迁移前后的多个数据库中的语义对比。
2.根据权利要求1所述的基于数据库迁移的语义对比方法,其特征在于,所述分析所述元数据内容包括:
将所述元数据进行断句,并将断句结果存储至映射键值对集中;
将所述映射键值对集封装至源队列中;
将所述源队列中的关键字与目标数据库中的关键字进行匹配;
将匹配后的关键字封装至目标数据库中的映射键值对集中,并将所述目标数据库中的映射键值对集封装至目标数据库中的源队列中;
根据所述目标数据库中的源队列生成分析语句,以对所述元数据进行分析。
3.根据权利要求2所述的基于数据库迁移的语义对比方法,其特征在于,所述将所述元数据进行断句包括:
根据断句分隔符以及断词分隔符将所述元数据进行断句。
4.根据权利要求3所述的基于数据库迁移的语义对比方法,其特征在于,所述断句分隔符为分号;所述断词分隔符为空格。
5.一种基于数据库迁移的语义对比装置,其特征在于,包括:
类型获取单元,用于获取源数据库类型、所述源数据库中元数据类型以及目标数据库类型;
元数据分析单元,用于分析所述元数据内容,以生成内容分析结果;
语义对比单元,用于根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述内容分析结果对比源数据库与目标数据库中的语义;
所述根据源数据库类型、所述源数据库中元数据类型、所述目标数据库类型以及所述
内容分析结果对比源数据库与目标数据库中的语义,包括:
根据源数据库类型、所述源数据库中元数据类型适配对应的数据库,并且配置连接池,
根据配置好的连接池以及目标数据库类型,确定目标数据库;将所述内容分析结果进行编
译执行,得到一个目标数据库上的元数据对象;至此完成一个元数据的分析;遍历该类型其
它元数据,循环执行以上步骤,直至源数据库中该元数据类型的所有元数据被翻译完成后
在目标中执行成功,以完成数据库迁移前后的多个数据库中的语义对比。
6.根据权利要求5所述的基于数据库迁移的语义对比装置,其特征在于,所述元数据分析单元包括:
断句模块,用于将所述元数据进行断句,并将断句结果存储至映射键值对集中;
第一封装模块,用于将所述映射键值对集封装至源队列中;
关键词匹配模块,用于将所述源队列中的关键字与目标数据库中的关键字进行匹配;
第二封装模块,用于将匹配后的关键字封装至目标数据库中的映射键值对集中,并将所述目标数据库中的映射键值对集封装至目标数据库中的源队列中;
分析语句生成单元,用于根据所述目标数据库中的源队列生成分析语句,以对所述元数据进行分析。
7.根据权利要求6所述的基于数据库迁移的语义对比装置,其特征在于,所述关键词匹配模块具体用于根据断句分隔符以及断词分隔符将所述元数据进行断句。
8.根据权利要求7所述的基于数据库迁移的语义对比装置,其特征在于,所述断句分隔符为分号;所述断词分隔符为空格。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至4任一项所述基于数据库迁移的语义对比方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至4任一项所述基于数据库迁移的语义对比方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010337700.5A CN111581184B (zh) | 2020-04-26 | 2020-04-26 | 基于数据库迁移的语义对比方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010337700.5A CN111581184B (zh) | 2020-04-26 | 2020-04-26 | 基于数据库迁移的语义对比方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111581184A CN111581184A (zh) | 2020-08-25 |
CN111581184B true CN111581184B (zh) | 2023-07-18 |
Family
ID=72119263
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010337700.5A Active CN111581184B (zh) | 2020-04-26 | 2020-04-26 | 基于数据库迁移的语义对比方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111581184B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744960A (zh) * | 2014-01-06 | 2014-04-23 | 河海大学 | 一种基于云平台的元数据索引模型及方法 |
CN104281704A (zh) * | 2014-10-22 | 2015-01-14 | 新华瑞德(北京)网络科技有限公司 | 数据库数据拷贝方法和装置 |
US9667472B2 (en) * | 2014-08-28 | 2017-05-30 | International Business Machines Corporation | Migrating virtual asset |
CN109753537A (zh) * | 2019-01-25 | 2019-05-14 | 中国人民大学 | 一种从关系数据到图数据的交互式数据迁移方法 |
CN110647579A (zh) * | 2019-08-16 | 2020-01-03 | 北京百度网讯科技有限公司 | 数据同步方法及装置、计算机设备与可读介质 |
-
2020
- 2020-04-26 CN CN202010337700.5A patent/CN111581184B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744960A (zh) * | 2014-01-06 | 2014-04-23 | 河海大学 | 一种基于云平台的元数据索引模型及方法 |
US9667472B2 (en) * | 2014-08-28 | 2017-05-30 | International Business Machines Corporation | Migrating virtual asset |
CN104281704A (zh) * | 2014-10-22 | 2015-01-14 | 新华瑞德(北京)网络科技有限公司 | 数据库数据拷贝方法和装置 |
CN109753537A (zh) * | 2019-01-25 | 2019-05-14 | 中国人民大学 | 一种从关系数据到图数据的交互式数据迁移方法 |
CN110647579A (zh) * | 2019-08-16 | 2020-01-03 | 北京百度网讯科技有限公司 | 数据同步方法及装置、计算机设备与可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111581184A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200293293A1 (en) | Pruning Engine | |
US9201646B2 (en) | Automatic code review and code reviewer recommendation | |
CN111597243B (zh) | 基于数据仓库抽象数据加载的方法及系统 | |
CN110347598B (zh) | 一种测试脚本生成方法、装置、服务器及存储介质 | |
CN111367886A (zh) | 数据库中数据迁移的方法及装置 | |
US6374261B1 (en) | Expert system knowledge-deficiency reduction through automated database updates from semi-structured natural language documents | |
US11327722B1 (en) | Programming language corpus generation | |
CN111813661A (zh) | 一种全局业务数据驱动自动测试方法、装置、设备和介质 | |
CN109614315A (zh) | 一种数据同步测试用例的自动生成方法及系统 | |
CN114594933A (zh) | 基于文件扫描的前端代码生成方法、装置及存储介质 | |
CN112420145A (zh) | 电子病历文书数据处理方法、装置及计算机可读存储介质 | |
CN112799718A (zh) | 一种枚举文档的生成方法、装置、电子设备及存储介质 | |
EP3422181B1 (en) | Method and device for generating code assistance information | |
CN101727451B (zh) | 信息提取方法和装置 | |
US10782942B1 (en) | Rapid onboarding of data from diverse data sources into standardized objects with parser and unit test generation | |
CN111581184B (zh) | 基于数据库迁移的语义对比方法及装置 | |
Nagl et al. | A specification environment for graph grammars | |
CN110580170A (zh) | 软件性能风险的识别方法及装置 | |
CN116360794A (zh) | 数据库语言解析方法、装置、计算机设备及存储介质 | |
US20230316100A1 (en) | Machine learning pipeline augmented with explanation | |
EP2535813B1 (en) | Method and device for generating an alert during an analysis of performance of a computer application | |
US11853196B1 (en) | Artificial intelligence driven testing | |
EP3816814A1 (en) | Crux detection in search definitions | |
CN113051262A (zh) | 一种数据质检方法、装置、设备及存储介质 | |
CN113779200A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |