一种数据迁移方法、装置、计算机设备及存储介质与流程

文档序号:29614232发布日期:2022-04-13 10:52阅读:124来源:国知局
一种数据迁移方法、装置、计算机设备及存储介质与流程

1.本技术涉及大数据技术领域,尤其涉及一种数据迁移方法、装置、计算机设备及存储介质。


背景技术:

2.现有技术中,监控软件作为一种物联网监控软件,可对智能设备进行实时数据采集,其所产生的数据是与时间呈线性相关的。通常根据数据分析的需要,需采集的设备数据非常密集。传统技术的做法为将数据存入关系型数据库中,并作为后续的数据分析的来源。而传统的数据库对于分析、处理、存储大量时间序列数据的能力非常有限,且其对服务器硬件资源的性能要求非常之高。面对大数据场景下,传统数据存储库难以实现大数据的分析和检索。
3.因此,引入了新型的newsql数据库作为分析存储的数据仓储,但需要从传统关系型数据库迁移采集数据到新型newsql数据库中。现有技术做法是将源数据以排序、查询分页的模式逐渐批量查询到内存中,并进行语法转换进而插入到newsql数据库中。但能产生的范围作用非常之窄,只适用于少量数据的迁移,对于千万级的数据,越到数据末尾,分页查询越缓慢。可见,面对监控软件存在大量数据需要进行数据库迁移时,现有技术提供的迁移方式存在迁移速度慢、效率低的问题。


技术实现要素:

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.图1是本技术可以应用于其中的示例性系统架构图;
48.图2是根据本技术的一种数据迁移方法的一个实施例的流程图;
49.图3是图2中步骤s1的一种具体实施方式的流程图;
50.图4是图2中步骤s4的一种具体实施方式的流程图;
51.图5是图4中步骤s43的一种具体实施方式的流程图;
52.图6是图5中步骤s434的一种具体实施方式的流程图;
53.图7是根据本技术的一种数据迁移方法的另一个实施例的流程图;
54.图8是根据本技术的一种数据迁移装置的一个实施例的结构示意图;
55.图9是图8所示连接模块一种具体实施方式的结构示意图;
56.图10是图8所示第二调度模块一种具体实施方式的结构示意图;
57.图11是图10所示调度子模块一种具体实施方式的结构示意图;
58.图12是根据本技术的一种数据迁移装置的另一个实施例的结构示意图;
59.图13是根据本技术的计算机设备的一个实施例的结构示意图。
具体实施方式
60.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本技术;本技术的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本技术的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
61.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
62.为了使本技术领域的人员更好地理解本技术方案,下面将结合附图,对本技术实施例中的技术方案进行清楚、完整地描述。
63.如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
64.终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
65.终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、mp3播放器(moving picture expertsgroup audio layer iii,动态影像专家压缩标准音频层面3)、mp4(moving pictureexperts group audio layer iv,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
66.服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
67.需要说明的是,本技术实施例所提供的一种数据迁移方法一般由服务器/终端设备执行,相应地,一种数据迁移装置一般设置于服务器/终端设备中。
68.应该理解,图1中的终端设备101、102、103、网络104和服务器105的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备101、102、103、网络104和服务器105。
69.继续参考图2,示出了根据本技术的一种数据迁移的方法的一个实施例的流程图。上述一种数据迁移方法包括以下步骤:
70.步骤s1,建立数据迁移调度中心与源关系型数据库和目标数据库集群的连接,并根据源关系型数据库和目标数据库集群的静态信息进行匹配。
71.在本实施例中,一种数据迁移方法运行于其上的电子设备(例如图1所示的服务器/终端设备)可以通过有线连接方式或者无线连接方式接收外部客户端发出的数据访问请求等。需要指出的是,上述无线连接方式可以包括但不限于3g/4g连接、wifi连接、蓝牙连接、wimax连接、zigbee连接、uwb(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
72.其中,数据迁移调度中心包括有源关系型数据库以及目标数据库集群的静态信息(数据库连接配置信息,包括(数据库类型、ip地址、ip端口、数据库用户名、数据库密码)、数据表映射配置信息、数据字段映射配置信息等),可以实现对源关系型数据库以及目标数据库集群进行维护和管理,且内部有同步算法,根据不同的类型可以选择不同的数据迁移策略进行数据迁移。在数据迁移调度中心,可以根据源关系型数据库以及目标数据库集群的静态信息进行匹配映射,具体可以包括在数据迁移调度中心将源关系型数据库的数据表映射配置信息以及数据字段映射配置信息与目标数据库集群的数据表映射配置信息进行匹配映射,两者数据表之间以及数据字段之间存在对应关系。
73.上述源关系型数据库中包括待迁移数据,源关系型数据库对服务器的cpu性能、内存空间、磁盘空间等硬件资源要求高。在大数据背景下,源关系型数据库常作为数据的仓储,可以用于存在智能设备实时采集到的数据。智能设备可以包括监控设备,监控设备可以设置在商场、道路、住宅、办公楼等区域。
74.上述目标数据库集群中包括目标数据库(目标newsql数据库),是对各种新的可扩展/高性能数据库的简称,目标数据库集群不仅具有nosql对海量数据的存储管理能力,还保持了传统数据库支持acid和sql等特性。目标数据库集群包括至少一个子数据库,也即是目标数据库集群可以配置集群而存在多个子数据库,即便是在千亿级数据量,同样也可以快速实现数据分析以及存储。特别是针对监控软件类设备,每分每秒都在产生监控数据,一个普通的数据中心每年可产生近几百亿的历史数据,当数据采集存储几年后,普遍在千亿级数据左右。此种情况下引入上述目标数据库集群不仅可以实现存储,还能提供数据分析。
75.具体的,因数据迁移调度中心已预先获取了源关系型数据库与目标数据库集群的静态信息,因此可以基于静态信息分别发送请求到源关系型数据库以及目标数据库集群,根据反馈的结果与源关系型数据库和目标数据库集群进行数据库连接。数据库连接成功后,可以基于静态信息在内部将源关系型数据库与目标数据库集群的数据表以及数据字段进行匹配映射,便于后续将需要同步迁移的数据表按照数据字段分解成多个小数据表。
76.步骤s2,检测目标数据库集群是否已存在待迁移数据缓存。
77.在本实施例中,每次迁移之前都将判断源关系型数据库中待迁移数据中的部分数据在此之前是否存在已同步缓存的情况(因其每一次同步都是无状态的)。在判断出待迁移数据中有数据已经同步缓存过/待迁移数据中没有已同步缓存的数据,则可以根据不同的情况采取不同的数据迁移策略。
78.步骤s3,若目标数据库集群存在待迁移数据缓存,则基于已存在的数据缓存以及数据迁移调度中心所存储的数据库连接配置信息,从存在待迁移数据的数据库中直接拉取待迁移数据至未迁移数据的数据库中。
79.在本实施例中,当检测到目标数据库集群有数据库已存在待迁移数据缓存或者待迁移数据中的部分数据缓存,则可以基于已存在的数据缓存以及数据迁移调度中心所存储
的数据库连接配置信息,在包括待迁移数据的数据库中直接拉取至未迁移数据的数据库中,例如:需要从源关系型数据库中拉取一定量的待迁移数据,待迁移数据中包括数据m,在迁移之前,检测到该一定量的待迁移数据/数据m在此之前已经缓存在数据库n1中,则此时其他数据库直接可以从数据库n1中拉取待迁移数据/数据m。
80.这样,可以避免从源关系型数据库再一次地拉取待迁移数据。因关系型数据库只做数据的存储和排列,无法对数据进行压缩以减少数据块的大小去提高数据的传输速率。但数据迁移调度中心每次可将已同步过的数据缓存在newsql中,复用newsql的数据压缩能力以及数据存储能力,根据同步的先后顺序,采用从源关系型数据库同步或从子数据库的数据缓存中同步,进而提升整体的数据同步效率。
81.步骤s4,若目标数据库集群不存在待迁移数据缓存,则检测源关系型数据库是否存在待迁移数据。
82.具体的,当目标数据库集群中所有的数据库都未检测到上述的待迁移数据缓存时,则可以实时或定时检测源关系型数据库中是否存在需要迁移的待迁移数据,有则可以进行迁移,没有则可以继续进行实时或定时检测。
83.步骤s5,若源关系型数据库存在待迁移数据,则基于源关系型数据库和目标数据库集群的静态信息,根据数据类型不同调动对应的数据迁移策略将待迁移数据从源关系型数据库中迁移至目标数据库集群中对应的目标数据库中,并在目标数据库建立已迁移数据缓存。
84.具体的,当源关系型数据库存在待迁移数据,则数据迁移调度中心可以基于源关系型数据库以及目标数据库集群的静态信息(数据表映射配置信息、数据字段映射配置信息以及数据库连接配置信息),根据源关系型数据库中的各数据表的数据类型采取不同的数据迁移策略,将源关系型数据库中的待迁移数据迁移至目标数据库集群的各数据表中。上述数据类型可以包括多种,数据迁移策略可以与数据类型一一对应,其中,数据类型可以是基于数据条数进行区分,根据数据条数的不同从而分为多个数据类型。
85.在本发明实施例中,通过提供数据迁移调度中心,可以实现对源关系型数据库与目标数据库集群的静态信息进行统一管理,解决大数据迁移时,源关系型数据库中的数据与目标数据库中的数据双方字段不一致的问题;其次,当目标数据库集群已存在待迁移数据缓存时,则可以基于已存在的待迁移数据缓存以及数据迁移调度中心所存储的数据库连接配置信息,从存在待迁移数据的数据库中直接拉取待迁移数据至未迁移数据的数据库中,也即是当目标数据库集群,可以直接实现数据库数据互拉,避免每次都从源关系型数据库读取,有利于加速目标数据库集群中各数据库的同步进度。此外,当需要从源关系型数据库中将待迁移数据迁移至目标数据库集群对应数据库时,可以基于源关系型数据库和目标数据库集群的静态信息,根据待迁移数据所属的数据类型选择不同的数据迁移策略进行数据同步迁移,有利于达到迁移的最大吞吐量,提高数据迁移效率。
86.在本实施例的一些可选的实现方式中,参考图3所示,图3为步骤s1的一个具体实施例流程图。上述电子设备执行的步骤s1具体可以包括:
87.步骤s11,通过数据迁移调度中心发出第一请求连接信号至源关系型数据库,以及发出第二请求连接信号至目标数据库集群。
88.具体的,要建立与源关系型数据库以及目标数据库集群的连接,首先需要通过数
据迁移调度中心向源关系型数据库发出请求连接信号(第一请求连接信号)以及向目标数据库集群发出请求连接信号(第二连接信号),以等待源关系型数据库以及目标数据库集群的反馈结果。
89.步骤s12,根据源关系型数据库返回的第一验证结果,以及目标数据库集群返回的第二验证结果建立源关系型数据库与目标数据库集群之间的网络连接。
90.具体的,当源关系型数据库接收到第一请求连接信号后,可以向数据迁移调度中心返回第一验证结果;以及当目标数据库集群接收到第二请求信号后,可以向数据迁移调度中心返回第二验证结果。上述第一验证结果以及第二验证结果可以表示同意建立连接。当接收到表示同意建立连接的反馈后,数据迁移调度中心便可以根据源关系型数据库的静态信息与源关系型数据库建立连接,以及根据目标数据库集群的静态信息与目标数据库集群建立连接。
91.当然,若存在连接失败的情况,数据迁移调度中心可以定时重复多次向源关系型数据库以及目标数据库集群发送请求连接信号,直到达到预设时间阈值或预设次数阈值之后停止发送请求信号。
92.步骤s13,根据数据表映射配置信息、数据字段映射配置信息和数据库连接配置信息,将源关系型数据库以及目标数据库集群的数据表以及数据字段进行匹配映射。
93.具体的,数据迁移调度中心包括有源关系型数据库和目标数据库集群的静态信息,静态信息包括数据表映射配置信息、数据字段映射配置信息以及数据连接配置信息。在建立连接之后,数据迁移调度中心根据数据表映射配置信息、数据字段映射配置信息以及数据库连接配置信息在内部将源关系型数据库和目标数据库集群的数据表和数据字段进行匹配映射,便于后续将需同步的数据表分解成多张小数据表。
94.在本实施例中,通过数据迁移调度中心分别向源关系型数据库以及目标数据库集群发送数据请求连接信号以便根据反馈的验证结果进行连接,然后再将源关系型数据库与目标数据库集群进行参数匹配,便于后续对源关系型数据库/目标数据库集群中的数据表进行分表。
95.在一些可选的实现方式中,参考图4所示,图4为上述步骤s5的一个具体实施例的流程图。上述电子设备执行的步骤s5具体包括:
96.步骤s51,通过数据迁移调度中心模拟源关系型数据库客户端,并向源关系型数据库发送数据查询请求。
97.具体的,建立连接以及完成参数匹配之后,可以通过将数据迁移调度中心模拟/伪装为源关系型数据库客户端的形式对源关系型数据库发送数据查询请求,以请求查询并读取源关系型数据库中的待迁移数据。
98.步骤s52,通过数据迁移调度中心模拟目标数据库客户端,并向目标数据库发送数据写入请求。
99.具体的,同样数据迁移调度中心还模拟/伪装为目标数据库客户端对目标数据库发送数据写入请求,以请求将后续读取到的待迁移数据迁移到目标数据库集群中对应的目标数据库,并在目标数据库建立已迁移数据缓存,可供后续有真实的目标数据库集群客户端对目标数据库集群进行数据查询分析。
100.当然,若发送数据查询请求和/或数据写入请求超时,可以选择定时/定次数的重
新发送,直到达到预设的时间阈值/次数阈值。
101.步骤s53,根据源关系型数据库返回的数据查询连接结果、目标数据库返回的数据写入连接结果、数据表映射配置信息、数据字段映射配置信息以及数据库连接配置信息,基于数据类型不同调动对应的数据迁移策略将待迁移数据迁移至目标数据库集群对应的目标数据库中,并在目标数据库建立已迁移数据缓存。
102.具体的,上述数据查询连接结果可以表示同意数据查询的结果,上述数据写入连接结果可以表示同意数据写入的结果。当源关系型数据库同意数据迁移调度中心读取待迁移数据,以及目标数据库同意数据迁移调度中心写入待迁移数据后,数据迁移调度中心便可以基于源关系型数据库以及目标数据库的数据表映射配置信息以及数据字段映射配置信息将读取到的待迁移数据同步到目标数据库中。目标数据库同时还会实时给数据迁移调度中心反馈同步状态。
103.在本实施例中,利用将数据迁移调度中心分别模拟源关系型数据库客户端以及目标数据库集群客户端的方式,能够读取源关系型数据库中的待迁移数据以及将待迁移数据同步到目标数据库集群中。
104.在一些可选的实现方式中,参考图5所示,图5为上述步骤s53的一个具体实施例的流程图。上述电子设备执行的步骤s53具体包括:
105.步骤s531,读取并判断源关系型数据库各数据表中待迁移数据对应的数据条数对应的数据类型。
106.具体的,在进行数据迁移之前,可以先读取源关系型数据中待迁移数据的并判断待迁移数据的数据条数。根据数据条数可以将数据分为3个数据类型,具体可以包括数据量依次递增的一类数据、二类数据以及三类数据,其中,一类数据可以指数据条数在50万条内;二类数据可以指数据条数在1000万条内;三类数据可以指数据条数大于1亿。当然,上述范围只是本实施例一个具体示例,可在一定范围类灵活调整,例如一类数据为60万条内,二类数据为1500万条内等等,在本实施例中,对此不做限定。
107.步骤s532,若待迁移数据对应的数据条数的数据类型为一类数据,则基于预设的单位数据条数从源关系型数据库轮询读取到数据迁移调度中心后,并发至目标数据库集群对应的目标数据库。
108.具体的,当判断出源关系型数据库各数据表中待迁移数据的数据条数在50万内时,则数据迁移调度中心可以采用轮询、排序加分页的模式,每次将预设的单位数据条数1万条数据从源关系型数据库轮询插入到目标数据库中,数据迁移调度中心将枚举出所有数据条数在50万条之内的数据,进行并发数据迁移。
109.步骤s533,若待迁移数据对应的数据条数的数据类型为二类数据,则将源关系型数据库的数据表分区拆分为多个数据子表,并将多个数据子表并发至目标数据库集群对应的目标数据库后,根据数据字段映射配置信息进行数据合并。
110.具体的,当判断出源关系型数据库各数据表中待迁移数据的数据条数在1000万以内时,数据迁移调度中心将通过下发逻辑语句到源关系型数据库中,由源关系型数据库将千万级数据量的数据表按照其内部的数据分区,拆分为多个数据子表,再由目标数据库并发拉取多个数据子表,最后在目标数据库中根据数据字段映射配置信息对拉取到的多个数据子表进行数据子表合并。
111.这样,可并发拉取多个数据子表,并在因网络不佳或其它原因导致数据拉取出错时,可以原则性地只拉取其中某几个错误子表的数据,而不会应为一个数据拉取错误而导致整个数据拉取出错,这样可以降低整体出错概率。
112.步骤s534,若待迁移数据对应的数据条数的数据类型为三类数据,则通过数据迁移调度中心模拟源关系型数据库客户端,解析源关系型数据库的底层数据传输协议,以读取待迁移数据并同步至目标数据库集群对应的目标数据库后,根据数据字段映射配置信息进行数据合并。
113.具体的,当判断出源关系型数据库各数据表中待迁移数据的数据条数总数大于1亿时,可以通过数据迁移调度中心模拟源关系型数据库客户端,解析源关系型数据库的底层数据传输协议,以读取源关系型数据库各数据表中待迁移数据并同步至目标数据库集群对应的目标数据库后,根据数据字段映射配置信息再对个数据表进行数据合并。
114.在本实施例中,根据数据条数将数据类型分为三类,每一类都采用不同的数据迁移方式,特别是当数据条数达到三类数据时,若将源关系型数据库中的数据表根据数据分区拆分成数据子表的过程将会非常缓慢,因其内部也是依靠数据查询的能力。而多数关系数据库当数据量在三类数据级别时,其处理效率非常低,此时依赖其处理效率去进行数据分表将会耗费较长时间。所以,根据不同数据类型采取不同数据迁移策略,有力与达到迁移的最大吞吐量。
115.在一些可选的实现方式中,参考图6所示,图6为上述步骤s534的一个具体实施例的流程图。上述电子设备执行的步骤s534具体包括:
116.步骤s5341,基于数据字段映射配置信息,将目标数据库所需同步的目标数据表拆分为多个子数据表,并下发至源关系型数据库中,以得到与多个子数据表对应的多个待迁移数据表。
117.具体的,数据迁移调度中心可以基于目标数据库集群的静态信息中的数据字段映射配置信息,将目标数据库集群所需要的目标数据表(包括亿级别数据量的数据表)拆分成多个目标子数据表,例如:将目标数据表c拆分为目标子数据表c1、目标子数据表c2、目标子数据表c3.......目标子数据表cn。
118.更具体的,拆分为多个目标子数据表后,通过数据迁移调度中心可以将多个目标子数据表下发至源关系型数据库中,使得在源关系型数据库中根据目标子数据表预备好统一的数据视图,以将待迁移数据根据目标子数据表构建多个对应的待迁移数据表。
119.步骤s5342,调用数据迁移调度中心的调用接口,控制目标数据库下发数据传输命令以伪装成源关系型数据库客户端解析源关系型数据库的底层数据传输协议,并通过流式数据读取方式读取多个待迁移数据表。
120.步骤s5343,对读取到的多个待迁移数据表进行数据合并。
121.具体的,通过调动数据迁移调度中心内部的数据迁移api(application program interface),让目标数据库下发数据传输命令,伪装成源关系型数据库客户端,引用源关系型数据库的数据传输协议,并采用流式数据读取的方式,主动从源关系型数据库中拉取各个拆分出来的多个待迁移数据表。等数据拉取完毕后,通过目标数据库的高读取和高写入性能,通过逻辑语句将各待迁移数据表根据数据映射字段信息自动拼接数据,在目标数据库中整合为最终完整的数据表。上述api为操作系统留给应用程序的一个调用接口,应用程
序通过调用操作系统的api而使操作系统去执行应用程序的命令。
122.在本技术中,针对数据类型属于三类数据的情况,采用了先进行目标数据表库数据表拆分下发至源关系型数据库以准备统一数据视图,然后再伪装为源关系型数表进行整合的方式,实现了数据量等级在亿级别数据的快速读取和迁移。
123.在一些可选的实现方式中,参考图7所示,图7为本实施例提供的一个具体实施例的流程图。在上述步骤s5之后,上述电子设备还可以执行以下步骤:
124.步骤s6,记录源关系型数据库中剩余待迁移数据条数以及已迁移至目标数据库中的已迁移数据条数。
125.步骤s7,根据剩余待迁移数据条数与已迁移数据条数计算当前同步进度,并根据当前同步进度选取对应的数据接口供第三方进行数据读取。
126.具体的,在对待迁移数据迁移的过程中,数据迁移调度中心可以实时记录源关系型数据库各数据表中剩余待迁移数据条数以及目标数据库中已拉取到的已迁移数据条数。然后,可以结合待迁移数据的总条数、剩余待迁移数据条数与已迁移数据条数计算当前同步进度,实时提供对应的数据接口,可供任何对接的第三方读取数据。
127.本技术通过实时计算数据同步进度,能够根据进度实时提供数据接口供任何第三方读取数据。
128.本技术可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
129.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)等非易失性存储介质,或随机存储记忆体(random access memory,ram)等。
130.应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
131.进一步参考图8,作为对上述图2所示方法的实现,本技术提供了一种数据迁移装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
132.如图8所示,本实施例的一种数据迁移装置800包括:连接模块801、检测模块802、
第一调度模块803以及第二调度模块805。其中:
133.连接模块801,用于建立数据迁移调度中心与源关系型数据库和目标数据库集群的连接,并根据源关系型数据库和目标数据库集群的静态信息进行匹配,其中,源关系型数据库包括待迁移数据;
134.第一检测模块802,用于检测目标数据库集群中是否已存在待迁移数据缓存;
135.第一调度模块803,用于若目标数据库集群存在待迁移数据缓存,则基于已存在的数据缓存以及数据迁移调度中心所存储的数据库连接配置信息,从存在待迁移数据的数据库中直接拉取待迁移数据至未迁移数据的数据库中;
136.第二检测模块804,用于若目标数据库集群不存在待迁移数据缓存,则检测源关系型数据库是否存在待迁移数据;
137.第二调度模块805,用于若源关系型数据库存在待迁移数据,则基于源关系型数据库和目标数据库集群的静态信息,根据数据类型不同调动对应的数据迁移策略将待迁移数据从源关系型数据库中迁移至目标数据库集群中对应的目标数据库中,并在目标数据库建立已迁移数据缓存。
138.在本实施例中,数据迁移调度中心已预先获取了源关系型数据库与目标数据库集群的静态信息,因此连接模块801可以基于静态信息分别发送请求到源关系型数据库以及目标数据库集群,根据反馈的结果与源关系型数据库和目标数据库集群进行数据库连接。数据库连接成功后,可以基于静态信息在内部将源关系型数据库与目标数据库集群的数据表以及数据字段进行匹配映射,便于后续将需要同步迁移的数据表按照数据字段分解成多个小数据表。
139.更具体的,在每次迁移之前都可以通过检测模块802判断源关系型数据库中待迁移数据中的部分数据在此之前是否存在已同步的情况(因其每一次同步都是无状态的)。在判断出待迁移数据中有数据已经同步过/待迁移数据中没有已同步的数据,则可以根据不同的情况采取不同的数据迁移策略。
140.第一检测模块802在任何一个数据库若检测到存在待迁移数据或者待迁移数据中的部分数据,第一调度模块803则可以基于数据库的数据表映射配置信息以及数据字段映射配置信息在该数据库中直接拉取,例如:需要从源关系型数据库中拉取一定量的待迁移数据,待迁移数据中包括数据m,在迁移之前,检测到该一定量的待迁移数据/数据m在此之前已经缓存在数据库n1中,则此时其他数据库直接可以从数据库n1中拉取待迁移数据/数据m。这样,可以避免从源关系型数据库再一次地拉取待迁移数据。因关系型数据库只做数据的存储和排列,无法对数据进行压缩以减少数据块的大小去提高数据的传输速率。但数据迁移调度中心每次可将已同步过的数据缓存在newsql中,复用newsql的数据压缩能力以及数据存储能力,根据同步的先后顺序,采用从源关系型数据库同步或从子数据库的数据缓存中同步,进而提升整体的数据同步效率。
141.更具体的,当目标数据库集群中所有的数据库都未检测到上述的待迁移数据缓存时,则第二检测模块804可以实时或定时检测源关系型数据库中是否存在需要迁移的待迁移数据,有则可以进行迁移,没有则可以继续进行实时或定时检测。
142.更具体的,若第一检测模块802在目标数据库集群的各个数据库中并未检测到待迁移数据缓存,则第二调度模块805可以基于源关系型数据库以及目标数据库集群的数据
表映射配置信息以及数据字段映射配置信息,根据源关系型数据库中的各数据表的数据类型采取不同的数据迁移策略,将源关系型数据库中的待迁移数据迁移至目标数据库集群的各数据表中。上述数据类型可以包括多种,数据迁移策略可以与数据类型一一对应,其中,数据类型可以是基于数据条数进行区分,根据数据条数的不同从而分为多个数据类型。
143.在本发明实施例中,通过提供一个数据迁移调度中心,可以实现对源关系型数据库与目标数据库集群的静态信息进行统一管理。其次,当检测模块802检测到目标数据库集群中任一数据库已存在待迁移数据缓存时,第一调度模块803可以基于源关系型数据库以及目标数据库集群的数据表映射配置信息以及数据字段映射配置信息从存在待迁移数据的子数据库中直接拉取待迁移数据。也即是当目标数据库集群需要配置集群存在多个子数据库时,可以直接实现子数据库数据互拉,避免每次都从源关系型数据库读取,有利于加速目标数据库集群中多个子数据库的同步进度。此外,当目标数据库集群中的所有的数据库都没有待迁移数据缓存时,则可以通过第二检测模块804检测源关系型数据库中是否存在待迁移数据,若存在,通过第二调度模块805可以基于源关系型数据库以及目标数据库集群的数据表映射配置信息以及数据字段映射配置信息,根据待迁移数据所属的数据类型选择不同的数据迁移策略进行数据同步迁移,有利于达到迁移的最大吞吐量,提高数据迁移效率。
144.在本实施例的一些可选的实现方式中,参阅图9,为连接模块一种具体实施方式的结构示意图。静态信息包括数据表映射配置信息、数据字段映射配置信息以及数据库连接配置信息。连接模块801包括第一请求子模块8011、连接子模块8012以及映射子模块8013。其中,
145.第一请求子模块8011用于通过数据迁移调度中心发出第一请求连接信号至源关系型数据库,以及发出第二请求连接信号至目标数据库集群。
146.连接子模块8012用于根据源关系型数据库返回的第一验证结果,以及目标数据库集群返回的第二验证结果建立源关系型数据库与目标数据库集群之间的网络连接。
147.映射子模块8013用于根据数据表映射配置信息、数据字段映射配置信息和数据库连接配置信息,将源关系型数据库以及目标数据库集群的数据表以及数据字段进行匹配映射。
148.在本实施例中,通过数据迁移调度中心的第一请求子模块8011分别向源关系型数据库以及目标数据库集群发送数据请求连接信号,以便连接子模块8012根据反馈的验证结果进行连接,然后映射子模块8013再将源关系型数据库与目标数据库集群进行参数匹配,便于后续对源关系型数据库/目标数据库集群中的数据表进行分表。
149.在本实施例的一些可选的实现方式中,参阅图10,为第二调度模块一种具体实施方式的结构示意图。第二调度模块805包括:第二请求子模块8051、第三请求子模块8052以及调度子模块8053。其中,
150.第二请求子模块8051用于通过数据迁移调度中心模拟源关系型数据库客户端,并向源关系型数据库发送数据查询请求。
151.第三请求子模块8052用于通过数据迁移调度中心模拟目标数据库客户端,并向目标数据库发送数据写入请求。
152.调度子模块8053用于根据源关系型数据库返回的数据查询连接结果、目标数据库
返回的数据写入连接结果、数据表映射配置信息、数据字段映射配置信息以及数据库连接配置信息,基于数据类型不同调动对应的数据迁移策略将待迁移数据迁移至目标数据库集群对应的目标数据库中,并在目标数据库建立已迁移数据缓存。
153.在本实施例中,利用将数据迁移调度中心模拟为源关系型数据库客户端,通过第二请求子模块8051向源关系型数据库发送数据查询请求;以及将数据迁移调度中心模拟/伪装为目标数据库客户端,通过第三请求子模块8052向源关系型数据库发送数据写入请求的方式,使调度子模块8053能够读取源关系型数据库中的待迁移数据以及将待迁移数据同步到目标数据库中,并在目标数据库建立已迁移数据缓存。
154.在本实施例的一些可选的实现方式中,参阅图11,为调度子模块一种具体实施方式的结构示意图。其中,数据类型包括数据量依次递增的一类数据、二类数据以及三类数据,上述调度子模块8053包括:读取子单元80531、第一迁移子单元80532、第二迁移子单元80533、第三迁移子单元80534。其中,
155.读取子单元80531用于读取并判断源关系型数据库各数据表中待迁移数据对应的数据条数对应的数据类型。
156.第一迁移子单元80532用于若待迁移数据对应的数据条数的数据类型为一类数据,则基于预设的单位数据条数从源关系型数据库轮询读取到数据迁移调度中心后,并发至目标数据库集群对应的目标数据库。
157.第二迁移子单元80533用于若待迁移数据对应的数据条数的数据类型为二类数据,则将源关系型数据库的数据表分区拆分为多个数据子表,并将多个数据子表并发至目标数据库集群对应的目标数据库后,根据数据字段映射配置信息进行数据合并。
158.第三迁移子单元80534用于若待迁移数据对应的数据条数的数据类型为三类数据,则通过数据迁移调度中心模拟源关系型数据库客户端,解析源关系型数据库的底层数据传输协议,以读取待迁移数据并同步至目标数据库集群对应的目标数据库后,根据数据字段映射配置信息进行数据合并。
159.在本实施例中,根据数据条数将数据类型分为三类,每一类都采用不同的数据迁移方式。特别是当数据条数达到三类数据时,若将源关系型数据库中的数据表根据数据分区拆分成数据子表的过程将会非常缓慢,因其内部也是依靠数据查询的能力,而多数关系数据库当数据量在三类数据级别时,其处理效率非常低,此时依赖其处理效率去进行数据分表将会耗费较长时间。所以,根据不同数据类型采取不同数据迁移策略,有力与达到迁移的最大吞吐量。
160.在本实施例的一些可选的实现方式中,上述第三迁移子单元80534还用于:基于数据字段映射配置信息,将目标数据库所需同步的目标数据表拆分为多个子数据表,并下发至源关系型数据库中,以得到与多个子数据表对应的多个待迁移数据表。
161.调用数据迁移调度中心的调用接口,控制目标数据库集群下发数据传输命令以伪装成源关系型数据库客户端解析源关系型数据库的底层数据传输协议,并通过流式数据读取方式读取多个待迁移数据表。
162.对读取到的多个待迁移数据表进行数据合并。
163.在本实施例中,针对数据类型属于三类数据的情况,采用了先进行目标数据表库数据表拆分下发至源关系型数据库以准备统一数据视图,然后再伪装为源关系型数表进行
整合的方式,实现了对亿级别数据的快速读取和迁移。
164.在本实施例的一些可选的实现方式中,参考图12所示,装置800还包括记录模块806以及计算模块807。其中,
165.记录模块806用于记录源关系型数据库中剩余待迁移数据条数以及已迁移至目标数据库中的已迁移数据条数。
166.计算模块807用于根据剩余待迁移数据条数与已迁移数据条数计算当前同步进度,并根据当前同步进度选取对应的数据接口供第三方进行数据读取。
167.在本实施例中,在对待迁移数据迁移的过程中,数据迁移调度中心的记录模块806可以实时记录源关系型数据库各数据表中剩余待迁移数据条数以及目标数据库中已拉取到的已迁移数据条数。然后,计算模块807可以结合待迁移数据的总条数、剩余待迁移数据条数与已迁移数据条数计算当前同步进度,实时提供对应的数据接口,可供任何对接的第三方读取数据。
168.为解决上述技术问题,本技术实施例还提供计算机设备。具体请参阅图12,图12为本实施例计算机设备基本结构框图。
169.计算机设备130包括通过系统总线相互通信连接存储器1301、处理器1302、网络接口1303。需要指出的是,图中仅示出了具有组件1301-1303的计算机设备130,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(application specific integrated circuit,asic)、可编程门阵列(field-programmable gate array,fpga)、数字处理器(digital signal processor,dsp)、嵌入式设备等。
170.计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
171.存储器1301至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器1301可以是计算机设备130的内部存储单元,例如该计算机设备130的硬盘或内存。在另一些实施例中,存储器1301也可以是计算机设备130的外部存储设备,例如该计算机设备130上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。当然,存储器1301还可以既包括计算机设备130的内部存储单元也包括其外部存储设备。本实施例中,存储器1301通常用于存储安装于计算机设备130的操作系统和各类应用软件,例如一种数据迁移方法的计算机可读指令等。此外,存储器1301还可以用于暂时地存储已经输出或者将要输出的各类数据。
172.处理器1302在一些实施例中可以是中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器1302通常用于控制计算机设备130的总体操作。本实施例中,处理器1302用于运行存储器1301中存储的计算机可读指令或者处理数据,例如运行一种数据迁移方法的计算机可读指令。
173.网络接口1303可包括无线网络接口或有线网络接口,该网络接口1303通常用于在计算机设备130与其他电子设备之间建立通信连接。
174.在本发明实施例中,通过提供一个数据迁移调度中心,可以实现对源关系型数据库与目标数据库集群的静态信息进行统一管理。其次,当目标数据库集群中任一数据库已存在待迁移数据缓存时,则可以基于源关系型数据库以及目标数据库集群的数据表映射配置信息以及数据字段映射配置信息从存在数据缓存的数据库中直接拉取待迁移数据,也即是可以直接实现子数据库数据互拉,避免每次都从源关系型数据库读取,有利于加速目标数据库集群中多个数据库的同步进度。此外,目标数据库集群没有数据缓存时,则可以基于源关系型数据库以及目标数据库集群的数据表映射配置信息以及数据字段映射配置信息,根据待迁移数据所属的数据类型选择不同的数据迁移策略进行数据同步迁移,有利于达到迁移的最大吞吐量,提高数据迁移效率。
175.本技术还提供了另一种实施方式,即提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可读指令,计算机可读指令可被至少一个处理器执行,以使至少一个处理器执行如上述的一种数据迁移方法的步骤。
176.在本发明实施例中,通过提供一个数据迁移调度中心,可以实现对源关系型数据库与目标数据库集群的静态信息进行统一管理。其次,当目标数据库集群中任一子数据库已存在待迁移数据时,则可以基于源关系型数据库以及目标数据库集群的数据表映射配置信息以及数据字段映射配置信息从存在待迁移数据的子数据库中直接拉取待迁移数据,也即是当目标数据库集群需要配置集群存在多个子数据库时,可以直接实现子数据库数据互拉,避免每次都从源关系型数据库读取,有利于加速目标数据库集群中多个子数据库的同步进度。此外,当需要从源关系型数据库中将待迁移数据迁移至目标数据库集群时,可以基于源关系型数据库以及目标数据库集群的数据表映射配置信息以及数据字段映射配置信息,根据待迁移数据所属的数据类型选择不同的数据迁移策略进行数据同步迁移,有利于达到迁移的最大吞吐量,提高数据迁移效率。
177.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本技术各个实施例的方法。
178.显然,以上所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例,附图中给出了本技术的较佳实施例,但并不限制本技术的专利范围。本技术可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本技术的公开内容的理解更加透彻全面。尽管参照前述实施例对本技术进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本技术说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本技术专利保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1