CN111177113A - 数据迁移方法、装置、计算机设备和存储介质 - Google Patents
数据迁移方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN111177113A CN111177113A CN201911244417.1A CN201911244417A CN111177113A CN 111177113 A CN111177113 A CN 111177113A CN 201911244417 A CN201911244417 A CN 201911244417A CN 111177113 A CN111177113 A CN 111177113A
- Authority
- CN
- China
- Prior art keywords
- data
- migration
- data migration
- parameters
- relational database
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- 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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据迁移方法、装置、计算机设备及存储介质,该方法包括运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数;加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面;通过所述前端页面获取待迁移数据对应的数据参数和调度参数;根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本,以便通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。本申请涉及数据处理领域,可以提高不同类型数据库之间的数据迁移效率。
Description
技术领域
本申请涉及数据迁移领域,尤其涉及一种数据迁移方法、装置、计算机设备和存储介质。
背景技术
目前,在互联网时代,数据库的应用十分广泛,其起到的作用主要是可以帮助用户存储和管理数据,通过查询、删除或新增数据等操作,能够快速有效的获取和更新相关数据。虽然目前的数据库类型较多,但主要包括两类,分别为关系型数据库(RelationalDatabase Management System,RDBMS)和非关系型数据库(Not OnlyStructured QueryLanguage,NoSQL)。由于关系型数据库与非关系型数据库的优劣势大多可以互补,因此在很多业务上常常会有不同类型的数据库之间进行数据迁移的需求。
如今的数据迁移方法,大多利用调度工具在同种类型的数据库之间实现迁移数据,而在不同类型数据库之间迁移数据难以实现或效率较低。比如将关系型数据库中的数据迁移到非关系型数据库中,这样的数据迁移没有开源的数据迁移工具,往往需要开发人员编写代码才能完成数据迁移,这无疑增加了开发人员的工作量,并且对于只会使用SQL语言的用户造成了极大的麻烦。因此,如何提高关系型数据库和非关系型数据库之间的数据迁移效率成为了亟需解决的问题。
发明内容
本申请提供了一种数据迁移方法、装置、计算机设备和存储介质,旨在提高不同类型数据库之间的数据迁移效率。
第一方面,本申请提供一种数据迁移方法,所述数据迁移方法包括以下步骤:
运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;
获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数,不同类型的关系型数据库对应不同的前端页面参数;
加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面;
通过所述前端页面获取待迁移数据对应的数据参数和调度参数;
根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本;
通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
第二方面,本申请还提供一种数据迁移装置,所述数据迁移装置包括:
工具运行模块,用于运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;
类型获取模块,用于获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数,不同类型的关系型数据库对应不同的前端页面参数;
前端显示模块,用于加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面;
参数获取模块,用于通过所述前端页面获取待迁移数据对应的数据参数和调度参数;
脚本确定模块,用于根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本;
数据迁移模块,用于通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
第三方面,本申请还提供一种计算机设备,所述计算机设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上述的数据迁移方法的步骤。
第四方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上述的数据迁移方法的步骤。
本申请提供一种数据迁移方法、装置、计算机设备及存储介质,本申请用于将关系型数据库的数据迁移到非关系型数据库中,通过运行数据迁移工具以获取待迁移数据对应的关系型数据库的类型,根据关系型数据库的类型确定前端页面参数,加载确定的前端页面参数,以显示数据迁移前端对应的前端页面,再通过前端页面获取待迁移数据对应的数据参数和调度参数,根据调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将数据参数传入至迁移脚本,最后通过数据迁移后台根据调度任务执行迁移脚本完成数据迁移。本申请可以实现快速将数据从关系型数据库中迁移至非关系型数据库中,避免了繁琐的开发过程,有效地提高数据迁移效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请的实施例提供的一种数据迁移系统的示意图;
图2为本申请的实施例提供的一种数据迁移方法的流程示意图;
图3为本申请的实施例提供的另一种数据迁移方法的流程示意图;
图4为本申请的实施例提供的一种数据迁移方法装置的示意性框图;
图5为本申请的实施例提供的另一种数据迁移方法装置的示意性框图;
图6为本申请一实施例涉及的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
本申请的实施例提供了一种数据迁移方法、数据迁移装置、计算机设备及存储介质,用于将关系型数据库中的数据迁移到非关系型数据库中,以提高数据迁移效率。
如图1所示,图1为本申请的实施例提供的一种数据迁移系统,该系统包括终端和服务器,所述终端和服务器通信连接,所述服务器与数据库通信连接,所述数据库包括关系型数据库和非关系型数据库。
其中,所述终端包括手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等电子设备。
其中,所述服务器包括独立一台服务器,或者服务器集群。
以下,将基于该数据迁移系统对本申请的实施例提供的数据迁移方法进行详细介绍。
请参照图2,图2为本申请的实施例提供的一种数据迁移方法的流程示意图。该数据迁移方法可以用于数据迁移系统的终端中。
如图2所示,该数据迁移方法包括步骤S101至步骤S105。
步骤S101、运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台。
在运行数据迁移工具之前,需要预先建立数据迁移工具,该数据迁移工具包括数据迁移前端和数据迁移后台。具体地,可以利用目前流行的Java或Python语言开发,基于Spring Boot或Python中的Django框架开发数据迁移后台;同时,使用轻量级的前端框架React或者Vue开发数据数据迁移前端。
该数据迁移前端具体为Web前端,运行在终端中通过显示Web页面与用户交互获取相应的信息,发送给迁移后台进行处理。
在开发完数据迁移工具之后,将该数据迁移工具保存在服务器中,当用户需要将关系型数据库中数据迁移至非关系型数据库时,启动并运行预先创建的数据迁移工具,即打开该数据迁移工具的Web前端,准备数据迁移。
在一实施例中,打开并运行数据迁移工具的Web前端时,首先运行该数据迁移工具的第一前端页面以及数据迁移后台,显示的第一前端页面可以只包括输入框,该输入框用于方便用户输入待迁移数据对应的关系型数据库的数据库标识。其中,数据库标识可以为数据库名称或数据库ID。
S102、获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数。
其中,不同类型的关系型数据库对应不同的前端页面参数。由此实现根据不同的数据类型显示不同页面,方便用户查看或做数据迁移的选择,同时还加快了页面的显示速度。
在一个实施例中,获取待迁移数据对应的关系型数据库的类型,根据该关系型数据库的类型确定前端页面参数,具体过程为:获取待迁移数据对应的数据库标识,根据该数据库标识查询该关系型数据库的类型,根据该关系型数据库的类型确定所述类型对应的显示策略、页面内容以及字段解析规则,根据确定的字段解析规则解析所述关系型数据库的数据表中的字段信息;将显示策略、页面内容和解析得到的字段信息作为前端页面参数。
需要说明的是,不同类型的关系型数据库对应不同的前端页面参数,因为不同类型的关系型数据库存储数据格式不尽相同,比如数据库表中的字段:可以为二进制数据类型、字符数据类型或Unicode数据类型,因此利用前端页面显示关系型数据库的数据表以及字段信息,需要先确定关系型数据库的类型,才能快速的显示前端页面的具体内容。
S103、加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面。
在得到前端页面参数后,通过加载该前端页面参数,根据显示策略显示页面内容和解析得到的字段信息,即该页面内容和字段信息组成数据迁移前端对应的前端页面。
具体显示过程为:获取前端页面参数中的页面内容、显示策略和字段解析规则;根据所述字段解析规则查询并解析待迁移数据对应的字段信息;按照所述显示策略显示所述页面内容和字段信息;其中,字段信息用于方便用户确定需要迁移的数据。
需要说明的是,由于不同类型的关系型数据库对应不同的前端页面参数,不同类型的前端页面参数包含的显示策略、页面内容和解析规则有可能相同,也有可能不同。所以最后显示的前端页面可以相同,也可以不相同。
S104、通过所述前端页面获取待迁移数据对应的数据参数和调度参数。
通过前端页面获取待迁移数据对应的数据参数和调度参数,具体包括获取数据参数的数据库、数据表名以及非关系型数据库的类型和获取调度参数的执行时间和执行方式。
在一实施例中,进行数据迁移时,获取的数据参数包括需要迁移的数据库里表的字段信息,该字段信息通过前端页面显示,以便用户可以根据需要在前端页面配置想要迁移的数据库里表的字段,即在前端页面的输入框中输入待迁移数据的数据库、数据表名和字段信息等。
调度参数包括执行时间和执行方式。其中,执行方式包括自动执行或手动执行等,自动执行方式可比如为当时间到达调度参数设定的执行时间时,自动执行数据迁移,而手动执行则可根据用户需要在执行时间时间内手动激活设置在数据前端页面的激活按钮。比如,当检测到用户点击该激活按钮时,即可执行数据迁移。可选的,该激活按钮的激活状态可用颜色变化表示,例如由灰色变成绿色则表示已经激活,亦或可根据用户需要自行设计,本实施例在此不做具体限定。
S105、根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本,以便通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
具体地,根据调度参数生成调度任务,即根据执行时间和执行方式生成调度任务,即Spark调度任务,同时也可以将该Spark调度任务打包成一个调度Jar包,并发送给数据迁移后台,以便数据迁移后台根据该Jar包执行调度任务。
具体地,根据非关系型数据库的类型确定对应的迁移脚本,该迁移脚本即Shell脚本,具体过程为:查询非关系数据库的类型与迁移脚本之间预设的映射关系表,得出查询结果以确定对应的迁移脚本。
其中,不同的Shell脚本对应不用的数据库类型,包括与数据库类型相关的配置和数据格式要求等。具体地,如表1所示,表1表示为Shell脚本与非关系型数据库的类型相对应的映射关系表。
表1映射关系表
| 非关系型数据库的类型 | Shell脚本 |
| HBase | Shell脚本Ⅰ |
| MongoDB | Shell脚本Ⅱ |
| ELASEARCH | Shell脚本Ⅲ |
此外,Shell脚本还具有限速功能,对于访问量极大的系统,绝对不能无节制的对数据进行读写,因为每个系统的带宽都是有限的,磁盘的IO(输入输出)也是有限的。由此需要进行限速,具体为:监控所述迁移脚本在读取和写入数据时的消耗时间;根据消耗时间确定停顿时间,并根据停顿时间进行停顿。
比如,Shell脚本在读取和写入数据时都会监控所消耗的时间,如果读取相应的数据对应的消耗时间超过预设阈值就开始短暂的等待,例如读取100条数据花费100ms以上,Shell脚本就会停顿1s,如果花费的时间超过200ms,Shell脚本就会停顿5s。由此实现了限速,提高数据迁移的速度。
当确定Shell脚本后,将待迁移数据对应的数据参数传入至确定的Shell脚本,传入的参数根据不同的非关系型数据库而不同。比如,关系型数据库的hive数据迁移到非关系型数据库的ELASTICSEARCH(简称ES)数据库,传入的数据参数就是hive的SQL语句,当MySQL数据库的数据迁移到HBase数据库时,传入的数据参数就是MySQL的数据表名。
在调度任务中的执行时间到达时,数据迁移后台调用传入参数的Shell脚本,并执行该Shell脚本,完成数据迁移。
具体地,利用数据迁移后台的spring boot调用Shell脚本,实现数据库之间的数据调度,比如每天的什么时间,什么字段需要调度,或者通过手动按钮点击开始,完成什么样字段调度,由此来完成从关系型数据库向非关系型数据库的数据迁移。
上述实施例提供的关系型数据库的数据迁移到非关系型数据库的数据迁移方法,通过预先创建的数据迁移工具,获取待迁移数据对应的关系型数据库的类型确定前端页面,并通过前端页面获取待迁移数据的数据参数以及确定将要迁移的非关系型数据的类型,并根据非关系型数据库的类型确定对的Shell脚本,利用该Shell脚本完成数据迁移,能够快速实现将数据从关系型数据库中迁移至非关系型数据库中,避免了繁琐的开发过程,提高了数据迁移效率。
请参照图3,图3为本申请的实施例提供的另一种数据迁移方法的流程示意图。该数据迁移方法可以用于数据迁移系统中。
如图3所示,该数据迁移方法包括步骤S201至步骤S207。
S201、运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;
启动并运行预先创建的数据迁移工具,即打开该数据迁移工具的Web前端,运行该数据迁移工具的第一前端页面以及数据迁移后台,显示的第一前端页面可以只包括输入框,该输入框用于方便用户输入待迁移数据对应的关系型数据库的数据参数。
S202、通过数据迁移前端显示输入框,通过所述输入框获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数。
具体地,数据迁移前端显示输入框后,用户可在该输入框输入自己需要迁移的数据对应的数据参数,比如数据库名称、数据表以及相应的字段信息,根据输入的这些数据参数来获取用户在输入框中填写的待迁移数据对应的数据库名称,通过该数据库名称获取待迁移数据对应的关系型数据库的类型。
根据该关系型数据库的类型确定前端页面参数,具体过程为:根据该关系型数据库的类型确定所述类型对应的显示策略、页面内容以及字段解析规则,根据确定的字段解析规则解析所述关系型数据库的数据表中的字段信息;将显示策略、页面内容和解析得到的字段信息作为前端页面参数。
S203、加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面;
加载确定的前端页面参数以显示数据迁移前端对应的前端页面,具体包括:加载确定的前端页面参数以在第一前端页面上显示数据迁移前端对应的第二前端页面,第二前端页面和关系型数据库的类型相关,不同类型的关系型数据对应不同的前端页面,第一前端页面和第二前端页面共同组成数据迁移前端的前端页面。
在一实施例中,通过第一前端页面获取页面参数中的页面内容、显示策略和字段解析规则,第二前端页面根据所述字段解析规则查询并解析待迁移数据对应的字段信息,按照所述显示策略在前端页面显示所述页面内容和字段信息。其中,字段信息用于方便用户确定需要迁移的数据。
S204、通过所述前端页面获取待迁移数据对应的数据参数和调度参数;
通过前端页面获取待迁移数据对应的数据参数和调度参数,具体包括获取数据参数的数据库、数据表名以及非关系型数据库的类型和获取调度参数的执行时间和执行方式。
在一实施例中,前端页面获取的数据参数是通过获取数据库的导入索引或命名空间,将所述导入索引或命名空间作为待迁移数据对应的数据参数。具体地,不同类型的数据库对应的数据库命名方式不一样,其中,导入索引指的是ES上的一个类似数据库的概念,而命名空间是HBASE数据库的一个概念,类似于RDBMS数据库的概念,每个命名空间下也有很多数据表,以便将待迁移数据保存在命名空间的数据表中。
调度参数包括执行时间和执行方式。其中,执行方式包括自动执行或手动执行等,自动执行方式可比如为当时间到达调度参数设定的执行时间时,自动执行数据迁移,而手动执行则可根据用户需要在执行时间时间内手动激活设置在数据前端页面的激活按钮。比如,当检测到用户点击该激活按钮时,即可执行数据迁移。可选的,该激活按钮的激活状态可用颜色变化表示,例如由灰色变成绿色则表示已经激活,亦或可根据用户需要自行设计,本实施例在此不做具体限定。
S205、根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本。
具体地,根据调度参数生成调度任务,即根据执行时间和执行方式生成调度任务,即Spark调度任务,根据非关系型数据库的类型确定对应的迁移脚本,该迁移脚本即Shell脚本,具体过程为:查询非关系数据库的类型与迁移脚本之间预设的映射关系表,得出查询结果以确定对应的迁移脚本,将待迁移数据对应的数据参数传入至该确定的迁移脚本。
S206、通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
在调度任务中的执行时间到达时,数据迁移后台调用传入参数的Shell脚本,并执行该Shell脚本,完成数据迁移。
具体地,利用数据迁移后台的spring boot调用Shell脚本,实现数据库之间的数据调度,比如每天的什么时间,什么字段需要调度,或者通过手动按钮点击开始,完成什么样字段调度,由此来完成从关系型数据库向非关系型数据库的数据迁移。
S207、发送数据验证指令至服务器对迁移到非关系型数据库中的数据进行校验,当校验通过时,发送数据删除指令至所述待迁移数据对应的关系型数据库以删除原数据。
具体地,在完成关系型数据库向非关系型数据的数据迁移之后,还包括对迁移到非关系型数据库中的数据进行校验,并将校验结果显示在数据迁移前端,以确定迁移数据的完整性和正确性。
当校验通过时,发送数据删除指令至所述待迁移数据对应的关系型数据库以删除原数据,以节省原关系型数据库的存储空间。具体的校验过程为:对待迁移数据进行加密处理,并获取加密字符串;同时对迁移后数据也进行加密处理,获取加密字符串,然后比对待迁移数据和迁移后数据的加密字符串是否一致,若比对结果一致,则确定校验通过,反之则不通过校验。需要说明的是,对待迁移数据加密的方式与对迁移后数据加密的方式要一致,例如均采用MD5加密方式。
上述实施例提供的数据迁移方法,用于把关系型数据库的数据迁移到非关系型数据库中,通过数据迁移前端获取待迁移数据的类型、数据参数和调度参数,并根据非关系型数据库的类型确定对应的迁移脚本,通过数据迁移后台执行确定的迁移脚本以完成数据迁移,并对迁移后的数据进行加密验证,以确定迁移数据的完整性和正确性,提高了数据迁移的效率和准确性。
请参阅图4,图4是本申请的实施例提供的一种数据迁移装置的示意性框图,该数据迁移装置用于执行前述的数据迁移方法。其中,该数据迁移装置可以配置于终端中。
如图4所示,该运动目标检测装置300,包括:工具运行模块301、类型获取模块302、前端显示模块303、参数获取模块304、脚本确定模块305。
工具运行模块301,用于运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;
类型获取模块302,用于获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数,不同类型的关系型数据库对应不同的前端页面参数;
前端显示模块303,用于加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面;
参数获取模块304,用于通过所述前端页面获取待迁移数据对应的数据参数和调度参数;
脚本确定模块305,用于根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本,以便通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
在一实施例中,所述类型获取模块302,还用于获取待迁移数据对应的数据库标识,根据所述数据库标识查询所述关系型数据库的类型;根据所述关系型数据库的类型确定所述类型对应的显示策略、页面内容以及字段解析规则;根据确定的字段解析规则解析所述关系型数据库的数据表中的字段信息;将所述显示策略、页面内容和解析得到的字段信息作为前端页面参数。
在一实施例中,所述前端显示模块303,还用于获取前端页面参数中的页面内容、显示策略和字段解析规则;根据所述字段解析规则查询并解析待迁移数据对应的字段信息;按照所述显示策略显示所述页面内容和字段信息。
在一实施例中,所述参数获取模块304,还用于通过前端页面获取待迁移数据的数据参数,所述数据参数包括数据库、数据表名以及非关系型数据库的类型;通过前端页面获取待迁移数据的调度参数,所述调度参数包括执行时间和执行方式。
在一实施例中,所述脚本确定模块305,还用于根据所述执行时间和执行方式生成调度任务;查询非关系数据库的类型与迁移脚本之间预设的映射关系表,得出查询结果以确定对应的迁移脚本。
请参照图5,图5为本申请实施例提供的另一种数据迁移装置的示意性框图。该数据迁移装置用于执行前述的数据迁移方法。其中,该数据迁移装置可以配置于服务器和终端中。
如图5所示,该面部识别装置400,包括:工具运行模块401、类型获取模块402、前端显示模块403、参数获取模块404、脚本确定模块405、数据迁移模块406、数据校验模块407。
工具运行模块401,用于运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;
类型获取模块402,用于通过数据迁移前端显示输入框,通过所述输入框获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数;
前端显示模块403,用于加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面
参数获取模块404,用于通过所述前端页面获取待迁移数据对应的数据参数和调度参数;
脚本确定模块405,用于根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本;
数据迁移模块406,用于通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
数据校验模块407,用于对迁移到非关系型数据库中的数据进行校验,当校验通过时,发送数据删除指令至所述待迁移数据对应的关系型数据库以删除原数据。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块的具体工作过程,可以参考前述数据迁移方法实施例中的对应过程,在此不再赘述。
上述实施例提供的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图6所示的计算机设备上运行。
请参阅图6,图6是本申请实施例提供的一种计算机设备的结构示意性框图。该计算机设备可以是终端。
参阅图6,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种数据迁移方法。
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种数据迁移方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;
获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数,不同类型的关系型数据库对应不同的前端页面参数;
加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面;
通过所述前端页面获取待迁移数据对应的数据参数和调度参数;
根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本,以便通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
在一个实施例中,所述处理器在实现获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数时,用于实现:
获取待迁移数据对应的数据库标识,根据所述数据库标识查询所述关系型数据库的类型;根据所述关系型数据库的类型确定所述类型对应的显示策略、页面内容以及字段解析规则;根据确定的字段解析规则解析所述关系型数据库的数据表中的字段信息;将所述显示策略、页面内容和解析得到的字段信息作为前端页面参数。
在一个实施例中,所述处理器在获取待迁移数据对应的关系型数据库的类型,用于实现:
通过数据迁移前端显示输入框,通过所述输入框获取待迁移数据对应的关系型数据库的类型。
在一个实施例中,所述处理器在实现所述加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面时,用于实现:
获取前端页面参数中的页面内容、显示策略和字段解析规则;根据所述字段解析规则查询并解析待迁移数据对应的字段信息;按照所述显示策略显示所述页面内容和字段信息。
在一个实施例中,所述处理器在实现所述通过所述前端页面获取待迁移数据对应的数据参数和调度参数时,用于实现:
通过前端页面获取待迁移数据的数据参数,所述数据参数包括数据库、数据表名以及非关系型数据库的类型;通过前端页面获取待迁移数据的调度参数,所述调度参数包括执行时间和执行方式。
在一实施例中,所述处理器在实现所述根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本时,用于实现:
根据所述执行时间和执行方式生成调度任务;查询非关系数据库的类型与迁移脚本之间预设的映射关系表,得出查询结果以确定对应的迁移脚本。
在一实施例中,所述处理器在实现所述通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移之后,还用于实现:
对迁移到非关系型数据库中的数据进行校验,当校验通过时,发送数据删除指令至所述待迁移数据对应的关系型数据库以删除原数据。
本申请的实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现本申请实施例提供的任一种数据迁移方法。
其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种数据迁移方法,用于将关系型数据库的数据迁移到非关系型数据库中,其特征在于,包括:
运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;
获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数,不同类型的关系型数据库对应不同的前端页面参数;
加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面;
通过所述前端页面获取待迁移数据对应的数据参数和调度参数;
根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本,以便通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
2.如权利要求1所述的数据迁移方法,其特征在于,所述获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数,包括:
获取待迁移数据对应的数据库标识,根据所述数据库标识查询所述关系型数据库的类型;
根据所述关系型数据库的类型确定所述类型对应的显示策略、页面内容以及字段解析规则;
根据确定的字段解析规则解析所述关系型数据库的数据表中的字段信息;
将所述显示策略、页面内容和解析得到的字段信息作为前端页面参数。
3.如权利要求2所述的数据迁移方法,其特征在于,所述获取待迁移数据对应的关系型数据库的类型,包括:
通过数据迁移前端显示输入框,通过所述输入框获取待迁移数据对应的关系型数据库的类型。
4.如权利要求2中所述的数据迁移方法,其特征在于,所述加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面,包括:
获取前端页面参数中的页面内容、显示策略和字段解析规则;
根据所述字段解析规则查询并解析待迁移数据对应的字段信息;
按照所述显示策略显示所述页面内容和字段信息。
5.如权利要求1所述的数据迁移方法,其特征在于,所述通过所述前端页面获取待迁移数据对应的数据参数和调度参数,包括:
通过前端页面获取待迁移数据的数据参数,所述数据参数包括数据库、数据表名以及非关系型数据库的类型;
通过前端页面获取待迁移数据的调度参数,所述调度参数包括执行时间和执行方式。
6.如权利要求5所述的数据迁移方法,其特征在于,所述根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,包括:
根据所述执行时间和执行方式生成调度任务;
查询非关系数据库的类型与迁移脚本之间预设的映射关系表,得出查询结果以确定对应的迁移脚本。
7.如权利要求1所述的数据迁移方法,其特征在于,所述通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移之后,还包括:
对迁移到非关系型数据库中的数据进行校验,当校验通过时,发送数据删除指令至所述待迁移数据对应的关系型数据库以删除原数据。
8.一种数据迁移装置,其特征在于,包括:
工具运行模块,用于运行数据迁移工具,所述数据迁移工具包括数据迁移前端和数据迁移后台;
类型获取模块,用于获取待迁移数据对应的关系型数据库的类型,根据所述关系型数据库的类型确定前端页面参数,不同类型的关系型数据库对应不同的前端页面参数;
前端显示模块,用于加载确定的前端页面参数,显示所述数据迁移前端对应的前端页面;
参数获取模块,用于通过所述前端页面获取待迁移数据对应的数据参数和调度参数;
脚本确定模块,用于根据所述调度参数生成调度任务,并根据非关系型数据库的类型确定对应的迁移脚本,将所述数据参数传入至所述迁移脚本,以便通过所述数据迁移后台根据所述调度任务执行所述迁移脚本完成数据迁移。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求1至7中任一项所述的数据迁移方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如权利要求1至7中任一项所述的数据迁移方法的步骤。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201911244417.1A CN111177113B (zh) | 2019-12-06 | 2019-12-06 | 数据迁移方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201911244417.1A CN111177113B (zh) | 2019-12-06 | 2019-12-06 | 数据迁移方法、装置、计算机设备和存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN111177113A true CN111177113A (zh) | 2020-05-19 |
| CN111177113B CN111177113B (zh) | 2023-07-25 |
Family
ID=70648755
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201911244417.1A Active CN111177113B (zh) | 2019-12-06 | 2019-12-06 | 数据迁移方法、装置、计算机设备和存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN111177113B (zh) |
Cited By (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112131128A (zh) * | 2020-09-29 | 2020-12-25 | 网易(杭州)网络有限公司 | 数据测试方法、装置、存储介质和电子装置 |
| CN112181489A (zh) * | 2020-09-28 | 2021-01-05 | 中国平安人寿保险股份有限公司 | 代码迁移方法、装置、计算机设备及存储介质 |
| CN112214473A (zh) * | 2020-09-23 | 2021-01-12 | 航天信息股份有限公司 | 一种数据库间的数据迁移方法及系统 |
| CN112667649A (zh) * | 2020-12-23 | 2021-04-16 | 北京浪潮数据技术有限公司 | 一种数据信息的查询方法、装置、设备及存储介质 |
| CN113781195A (zh) * | 2021-09-09 | 2021-12-10 | 平安国际智慧城市科技股份有限公司 | 财政数据监控方法、装置 |
| CN114048188A (zh) * | 2021-11-16 | 2022-02-15 | 金现代信息产业股份有限公司 | 一种跨数据库的数据迁移系统及方法 |
| CN114741375A (zh) * | 2022-05-18 | 2022-07-12 | 江苏省联合征信有限公司 | 一种多源异构数据库快速自动数据迁移系统及方法 |
| CN115543969A (zh) * | 2022-11-28 | 2022-12-30 | 建信金融科技有限责任公司 | 一种数据迁移方法、装置、设备及介质 |
| CN115543962A (zh) * | 2022-09-22 | 2022-12-30 | 杭州群核信息技术有限公司 | 服务迁移方法、装置和存储介质 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20080084332A (ko) * | 2007-03-16 | 2008-09-19 | (주)온디멘드 | 데이터베이스 마이그레이션 장치 및 방법 |
| US20160188710A1 (en) * | 2014-12-29 | 2016-06-30 | Wipro Limited | METHOD AND SYSTEM FOR MIGRATING DATA TO NOT ONLY STRUCTURED QUERY LANGUAGE (NoSOL) DATABASE |
| CN109684298A (zh) * | 2018-09-07 | 2019-04-26 | 平安科技(深圳)有限公司 | 数据库迁移方法、装置、设备及存储介质 |
| CN110209652A (zh) * | 2019-05-20 | 2019-09-06 | 平安科技(深圳)有限公司 | 数据表迁移方法、装置、计算机设备和存储介质 |
| CN110297813A (zh) * | 2019-05-22 | 2019-10-01 | 平安银行股份有限公司 | 数据迁移方法、装置、计算机设备及存储介质 |
-
2019
- 2019-12-06 CN CN201911244417.1A patent/CN111177113B/zh active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20080084332A (ko) * | 2007-03-16 | 2008-09-19 | (주)온디멘드 | 데이터베이스 마이그레이션 장치 및 방법 |
| US20160188710A1 (en) * | 2014-12-29 | 2016-06-30 | Wipro Limited | METHOD AND SYSTEM FOR MIGRATING DATA TO NOT ONLY STRUCTURED QUERY LANGUAGE (NoSOL) DATABASE |
| CN109684298A (zh) * | 2018-09-07 | 2019-04-26 | 平安科技(深圳)有限公司 | 数据库迁移方法、装置、设备及存储介质 |
| CN110209652A (zh) * | 2019-05-20 | 2019-09-06 | 平安科技(深圳)有限公司 | 数据表迁移方法、装置、计算机设备和存储介质 |
| CN110297813A (zh) * | 2019-05-22 | 2019-10-01 | 平安银行股份有限公司 | 数据迁移方法、装置、计算机设备及存储介质 |
Cited By (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112214473A (zh) * | 2020-09-23 | 2021-01-12 | 航天信息股份有限公司 | 一种数据库间的数据迁移方法及系统 |
| CN112214473B (zh) * | 2020-09-23 | 2024-06-21 | 航天信息股份有限公司 | 一种数据库间的数据迁移方法及系统 |
| CN112181489B (zh) * | 2020-09-28 | 2023-07-25 | 中国平安人寿保险股份有限公司 | 代码迁移方法、装置、计算机设备及存储介质 |
| CN112181489A (zh) * | 2020-09-28 | 2021-01-05 | 中国平安人寿保险股份有限公司 | 代码迁移方法、装置、计算机设备及存储介质 |
| CN112131128A (zh) * | 2020-09-29 | 2020-12-25 | 网易(杭州)网络有限公司 | 数据测试方法、装置、存储介质和电子装置 |
| CN112131128B (zh) * | 2020-09-29 | 2023-08-22 | 网易(杭州)网络有限公司 | 数据测试方法、装置、存储介质和电子装置 |
| CN112667649A (zh) * | 2020-12-23 | 2021-04-16 | 北京浪潮数据技术有限公司 | 一种数据信息的查询方法、装置、设备及存储介质 |
| CN113781195A (zh) * | 2021-09-09 | 2021-12-10 | 平安国际智慧城市科技股份有限公司 | 财政数据监控方法、装置 |
| CN114048188A (zh) * | 2021-11-16 | 2022-02-15 | 金现代信息产业股份有限公司 | 一种跨数据库的数据迁移系统及方法 |
| CN114741375A (zh) * | 2022-05-18 | 2022-07-12 | 江苏省联合征信有限公司 | 一种多源异构数据库快速自动数据迁移系统及方法 |
| CN114741375B (zh) * | 2022-05-18 | 2024-12-24 | 江苏省联合征信有限公司 | 一种多源异构数据库快速自动数据迁移系统及方法 |
| CN115543962A (zh) * | 2022-09-22 | 2022-12-30 | 杭州群核信息技术有限公司 | 服务迁移方法、装置和存储介质 |
| CN115543969B (zh) * | 2022-11-28 | 2023-03-10 | 建信金融科技有限责任公司 | 一种数据迁移方法、装置、设备及介质 |
| CN115543969A (zh) * | 2022-11-28 | 2022-12-30 | 建信金融科技有限责任公司 | 一种数据迁移方法、装置、设备及介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN111177113B (zh) | 2023-07-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111177113B (zh) | 数据迁移方法、装置、计算机设备和存储介质 | |
| US10534773B2 (en) | Intelligent query parameterization of database workloads | |
| CN107239392B (zh) | 一种测试方法、装置、终端及存储介质 | |
| CN108536745B (zh) | 基于Shell的数据表提取方法、终端、设备及存储介质 | |
| WO2021217846A1 (zh) | 接口数据处理方法、装置、计算机设备和存储介质 | |
| CN108255735B (zh) | 关联环境测试方法、电子装置及计算机可读存储介质 | |
| CN117033249B (zh) | 一种测试用例生成方法、装置、计算机设备及存储介质 | |
| CN111666201A (zh) | 回归测试方法、装置、介质及电子设备 | |
| CN108287708A (zh) | 一种数据处理方法、装置、服务器及计算机可读存储介质 | |
| CN103226510B (zh) | 解析vmcore文件的方法和装置 | |
| CN111444158A (zh) | 长短期用户画像生成方法、装置、设备及可读存储介质 | |
| WO2019161620A1 (zh) | 应用依赖关系更新方法、终端、设备及存储介质 | |
| CN114185791A (zh) | 一种数据映射文件的测试方法、装置、设备及存储介质 | |
| CN114968725A (zh) | 任务依赖关系校正方法、装置、计算机设备及存储介质 | |
| CN110750440A (zh) | 数据测试方法及终端设备 | |
| CN110222046B (zh) | 列表数据的处理方法、装置、服务器和存储介质 | |
| CN113238739A (zh) | 一种插件开发和数据获取方法、装置、电子设备及介质 | |
| CN113901773B (zh) | 数据核算方法、装置、电子设备及存储介质 | |
| CN112363814A (zh) | 任务调度方法、装置、计算机设备及存储介质 | |
| CN107506299B (zh) | 一种代码分析方法及终端设备 | |
| US9201937B2 (en) | Rapid provisioning of information for business analytics | |
| CN115033240A (zh) | 报错信息的处理方法、装置、计算机设备及存储介质 | |
| CN110309062A (zh) | 用例生成方法、装置、电子设备及存储介质 | |
| CN110764745A (zh) | 变量的传输和收集方法、装置及计算机可读存储介质 | |
| CN116755660A (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 |