CN114610697A - 数据迁移方法、装置、计算机设备和存储介质 - Google Patents
数据迁移方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114610697A CN114610697A CN202210284292.0A CN202210284292A CN114610697A CN 114610697 A CN114610697 A CN 114610697A CN 202210284292 A CN202210284292 A CN 202210284292A CN 114610697 A CN114610697 A CN 114610697A
- Authority
- CN
- China
- Prior art keywords
- data
- migration
- prediction result
- target database
- feature
- 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
- 238000013508 migration Methods 0.000 title claims abstract description 195
- 230000005012 migration Effects 0.000 title claims abstract description 194
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 239000013598 vector Substances 0.000 claims description 25
- 239000011159 matrix material Substances 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 10
- 230000004931 aggregating effect Effects 0.000 claims description 8
- 238000012300 Sequence Analysis Methods 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 4
- 238000011176 pooling Methods 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 4
- 230000001502 supplementing effect Effects 0.000 claims description 3
- 238000013527 convolutional neural network Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 239000000523 sample Substances 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009469 supplementation Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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
-
- 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/217—Database tuning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/14—Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
- G06F17/148—Wavelet transforms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种数据迁移方法、装置、计算机设备和存储介质,该方法包括:接收数据迁移指令;其中,数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;获取目标数据库的多源性能数据;从目标数据库的多源性能数据中提取特征数据;将特征数据输入预测模型中,根据特征数据生成多个不同时间尺度的特征数据,并根据多个不同时间尺度的特征数据得到目标数据库的性能预测结果;根据性能预测结果,生成迁移数据的迁移规则,根据迁移规则进行待迁移数据的迁移。上述方法能够提高数据迁移效率。
Description
技术领域
本发明涉及数据迁移技术领域,特别是涉及数据迁移方法、装置、计算机设备和存储介质。
背景技术
在数据库表的应用过程中,随着记录的数据不断增多,一方面可能使得数据查询速度变慢,另一方面可能造成空间不足,无法存储新数据,所以需要对数据库表中的数据进行迁移。
然而,传统的历史数据迁移都是由DBA主导,在数据库层面采用一刀切的迁移方式,一次性将时间截点前的历史数据迁移完毕。这样的迁移方式必须停止***的应用服务才能进行数据的迁移,具有较差的用户体验。同一数据库不同业务数据的保存周期也有一定差异,该迁移方式无法针对该情况进行定制化处理。而且当数据迁移失败时,只能回滚相关提交,然后重新尝试迁移,缺乏相关的应急措施和补偿机制,不利于实际操作。
综上所述,如何提高数据迁移效率是目前本领域技术人员亟待解决的问题。
发明内容
本申请提供了一种数据迁移方法、装置、计算机设备和存储介质。
第一方面提供了一种数据迁移方法,包括:
接收数据迁移指令;其中,所述数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;
获取目标数据库的多源性能数据;
从所述目标数据库的多源性能数据中提取特征数据;
将所述特征数据输入预测模型中,根据所述特征数据生成多个不同时间尺度的特征数据,并根据所述多个不同时间尺度的特征数据得到所述目标数据库的性能预测结果;
根据所述性能预测结果,生成所述迁移数据的迁移规则,根据所述迁移规则进行待迁移数据的迁移。
在一些实施例中,所述预测模型包括第一预测单元和第二预测单元;
所述将所述特征数据输入预测模型中,根据所述特征数据生成多个不同时间尺度的特征数据,并根据所述多个不同时间尺度的特征数据得到所述目标数据库的性能预测结果,包括:
将所述特征数据输入第一预测单元中,对所述特征数据进行多个时间尺度的离散小波变换,得到各个时间尺度的第一特征矩阵,所述第一预测单元根据所述第一特征矩阵得到所述目标数据库的第一预测结果;
将所述特征数据输入第二预测单元中,所述第二预测单元对所述特征数据进行多个不同时间尺度的下采样,得到各个时间尺度的第二特征矩阵,所述第二模型根据所述第二特征矩阵得到所述目标数据库的第二预测结果;
聚合所述第一预测结果和所述第二预测结果,得到所述目标数据库的性能预测结果。
在一些实施例中,所述第一预测单元包括小波变换模型和XGBoost模型,所述第二预测单元包括CNN模型和GRU模型;
所述第一预测单元根据所述第一特征矩阵得到所述目标数据库的第一预测结果,包括:
将所述第一特征矩阵输入所述XGBoost模型,得到所述目标数据库性能数据的第一预测结果;
所述所述第二模型根据所述第二特征矩阵得到所述目标数据库的第二预测结果,包括:
将所述第二特征矩阵输入所述CNN模型进行卷积和池化操作,得到多个时间尺度的第一特征向量;
对所述多个时间尺度的第一特征向量进行序列长度的补充,使得所述第一特征向量具有相同维数;
将所述第一特征向量输入所述GRU模型,采用所述GRU模型对所述第一特征向量进行时序分析,生成第二特征向量;
采用预设长度的全连接层及softmax分类器对所述第二特征向量进行分类评分,得到得到所述目标数据库性能数据的第二预测结果。
在一些实施例中,所述聚合所述第一预测结果和所述第二预测结果,得到所述目标数据库的性能预测结果,包括:
通过预设长度的全连接层聚合所述第一预测结果和所述第二预测结果,输出层输出最终的数据迁移结果。
在一些实施例中,所述根据所述性能预测结果,生成所述迁移数据的迁移规则,根据所述迁移规则进行待迁移数据的迁移,包括:
根据所述目标数据库的性能预测结果和所述待迁移数据迁出所述源数据库的时间轴,确定所述待迁移数据中的当前目标迁移数据;
根据所述数据迁移指令,从预设的模板数据库中确定出与所述数据迁移指令对应的迁移模板,所述迁移模板为事先编辑好的用于数据迁移的脚本框架;
将所述源数据库信息、目标数据库信息和迁移对象信息添加到确定出的迁移模板中,以形成迁移脚本程序;
执行所述迁移脚本程序以实现当前目标迁移数据的迁移。
在一些实施例中,在所述当前目标迁移数据的迁移过程中,按照预设的时间间隔周期性的生成迁移日志;
所述执行所述迁移脚本程序以实现当前目标迁移数据的迁移,包括:
当所述数据迁移任务重启之后,从最后记录的数据位置开始继续从所述原数据库向所述新数据库中迁移所述当前目标迁移数据。
在一些实施例中,所述第二预测单元还包括Dropout层,所述Dropout层设置在GRU模型与全连接层之间。
第二方面提供了一种数据迁移装置,包括:
指令触发单元,用于接收数据迁移指令;其中,所述数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;
获取单元,用于获取目标数据库的多源性能数据;
特征提取单元,用于从所述目标数据库的多源性能数据中提取特征数据;
预测单元,用于将所述特征数据输入预测模型中,根据所述特征数据生成多个不同时间尺度的特征数据,并根据所述多个不同时间尺度的特征数据得到所述目标数据库的性能预测结果;
迁移单元,用于根据所述性能预测结果,生成所述迁移数据的迁移规则,根据所述迁移规则进行待迁移数据的迁移。
第三方面提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述数据迁移方法的步骤。
第四方面提供了一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述数据迁移方法的步骤。
上述数据迁移方法、装置、计算机设备和存储介质,收数据迁移指令;其中,所述数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;获取目标数据库的多源性能数据;从所述目标数据库的多源性能数据中提取特征数据;将所述特征数据输入预测模型中,根据所述特征数据生成多个不同时间尺度的特征数据,并根据所述多个不同时间尺度的特征数据得到所述目标数据库的性能预测结果;根据所述性能预测结果,生成所述迁移数据的迁移规则,根据所述迁移规则进行待迁移数据的迁移。因此,该方法运行速度更快,准确度更高,鲁棒性更好,预测标准差更低,能更好的实现目标数据库的性能预测,根据目标数据库的性能确定数据迁移的规则。
附图说明
图1为一个实施例中提供的数据迁移方法的实施环境图;
图2为一个实施例中数据迁移方法的流程图;
图3为一个实施例中数据迁移装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一xx脚本称为第二xx脚本,且类似地,可将第二xx脚本称为第一xx脚本。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的服务器(又叫事件处理设备,其中,事件处理设备可以是由单独的事件处理装置构成,也可以是由其他装置与事件处理装置组合形成)结构示意图。
本发明实施例服务器指一个管理资源并为用户提供服务的计算机,通常分为文件服务器、数据库服务器和应用程序服务器。运行以上软件的计算机或计算机***也被称为服务器。相对于普通PC(personal computer)个人计算机来说,服务器在稳定性、安全性、性能等方面都要求较高;如图1所示,该服务器可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),网络接口1004,用户接口1003,存储器1005,通信总线1002、芯片组、磁盘***、网络等硬件等。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真WIreless-FIdelity,WIFI接口)。存储器1005可以是高速随机存取存储器(random access memory,RAM),也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,服务器还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模型;输入单元,比显示屏,触摸屏;网络接口可选除无线接口中除WiFi外,蓝牙、探针、3G/4G/5G(前面的数字表示的是蜂窝移动通信网络的代数。就是表示是第几代的网络。英文字母G表示generation)联网基站设备等等。本领域技术人员可以理解,图1中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,该计算机软件产品存储在一个存储介质(存储介质:又叫计算机存储介质、计算机介质、可读介质、可读存储介质、计算机可读存储介质或者直接叫介质等,如RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的方法,作为一种计算机存储介质的存储器1005中可以包括操作***、网络通信模型、用户接口模型以及计算机程序。
在图1所示的服务器中,网络接口1004主要用于连接后台数据库,与后台数据库进行数据通信;用户接口1003主要用于连接客户端(客户端,又叫用户端或终端,本发明实施例终端可以固定终端,也可以是移动终端,在此不再赘述),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的计算机程序,并执行本发明以下实施例提供的事件处理方法中的步骤。
如图2所示,在一个实施例中,提出了一种数据迁移方法,该数据迁移方法可以应用于上述的计算机设备1001中,具体可以包括以下步骤:
步骤201、接收数据迁移指令;其中,数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;
具体地,源数据库信息包括:源数据库的环境信息、源数据库的种类信息、源数据库的IP地址信息、源数据库的端口信息、和源数据库的实例名信息;
目标数据库信息包括:目标数据库的环境信息、目标数据库的种类信息、目标数据库的IP地址信息、目标数据库的端口信息、和目标数据库的实例名信息;
迁移对象信息包括以下之一:instance实例级、database库级、table表级、metadata元数据级、data数据级。
需要说明的是,数据迁移指令用于从源数据库中提取迁移对象,并将迁移对象同步到目标数据库中。在本实施例中,数据库的环境信息包括:开发环境(DEV)、测试环境(STG)、用户验收环境(UAT)、演示环境(DEMO)、生产环境(PRD);不同环境信息的数据库都有对应种类的数据库。在本实施例中,数据库的种类信息包括:Oracle数据库、MySQL数据库、PostgreSQL数据库、MongoDB数据库。
步骤202、获取目标数据库的多源性能数据;
其中,性能数据,包含CUP消耗、内存消耗、每秒sql的执行数等。
步骤203、从目标数据库的多源性能数据中提取特征数据;
步骤204、将特征数据输入预测模型中,根据特征数据生成多个不同时间尺度的特征数据,并根据多个不同时间尺度的特征数据得到目标数据库的波动数据的预测结果。
在本实施例中,通过在不同时间尺度下采样直接获得多尺度模式,多尺度信息指多种类型的尺度信息,对时间序列进行多尺度多方面的细化,最终可以达到频率细分的目的
在一些实施例中,上述步骤204包括:
步骤2041、将特征数据输入第一预测单元中,对特征数据进行多个时间尺度的离散小波变换,得到各个时间尺度的第一特征矩阵,并第一预测单元根据第一特征矩阵得到目标数据库的第一预测结果;
其中,小波变换对时间和空间上频率的局部信息进行分析,通过伸缩和平移操作对时间序列进行多尺度多方面的细化,最终可以达到频率细分的目的,能自动适应时间序列分析的要求,可聚焦到时间序列的任意方面。
步骤2042、将特征数据输入第二预测单元中,第二预测单元对特征数据进行多个不同时间尺度的下采样,得到各个时间尺度的第二特征矩阵,并第二模型根据第二特征矩阵得到目标数据库的第二预测结果;
上述步骤2041可以包括:
将第一特征矩阵输入XGBoost模型,得到目标数据库性能数据的第一预测结果;
其中,XGBoost模型是根据样本项目的多源性能数据的特征数据,以及样本项目已知的分类评分结果训练得到的。
上述步骤2042可以包括:
步骤2042a、将第二特征矩阵输入CNN模型进行卷积和池化操作,得到多个时间尺度的第一特征向量;
步骤2042b、对多个时间尺度的第一特征向量进行序列长度的补充(Keyoperation),使得第一特征向量具有相同维数;
步骤2042c、将第一特征向量输入GRU模型,采用GRU模型对第一特征向量进行时序分析,生成第二特征向量;
步骤2042d、采用预设长度的全连接层及softmax分类器对第二特征向量进行分类评分,得到得到目标数据库性能数据的第二预测结果。
CNN卷积神经网络负责特征提取,通过将历史性能数据对应的多维特征矩阵输入到CNN网络中进行处理,获得历史性能数据对应的特征向量。
将通过递归卷积神经网络得到的多个时间尺度分解数据进行序列长度的补充,得到多个时间尺度分解数据的类别划分,包括:采用如下公式将这些多尺度空间特征串联起来,在这里将多个向量)连接成单个向量Vi。0为零填充,以确保具有相同的维数。该操作可以使在每个时间步上包含多尺度信息;让多尺度信息随时间增加。
进一步地,另一份数据输入递归卷积神经网络多个时间尺度的分解数据,包括:递归卷积神经网络是一个5层的CNN,给定一个输入库存数据xs∈RLxd,第一层是一个ID卷积的特征,16个滤波器的1xd,然后堆叠两个卷积层,32个滤波器的1x3;每个层后面都有一个2x1最大池化层;CNN的计算可以简单地表示为:其中是CNN得到的所有基本特征向量的第i个,它是针对s尺度的项目数据的。
在这里,遵循CNNpred[Ehsan和Saman,2019]作为CNN的结构。CNNpred是一种面向项目数据的CNN,其结构优于其他CNNsIGunduz等。
步骤2043、聚合第一预测结果和第二预测结果,得到目标数据库的性能预测结果。
在一些实施例中,上述步骤2043可以包括:通过预设长度的全连接层聚合第一预测结果和第二预测结果,输出层输出最终的数据迁移结果。
步骤205、根据性能预测结果,生成迁移数据的迁移规则,根据迁移规则进行待迁移数据的迁移。
其中,以监测到的随时间变化的数据库性能数据为输入,不断优化算法模型。根据数据模型不断的改进迁移任务的执行周期,充分利用数据库的空闲时间,避开执行高峰期,使得数据迁移过程达到一个最优的效果。
监测模块会实时监测数据库的CPU性能,当数据库执行任务过多,CPU占用率达到一个阀值时,会自动停止数据迁移任务,缓解数据库的压力。
在一些实施例中,上述步骤205可以包括:
步骤2051、根据目标数据库的性能预测结果和待迁移数据迁出源数据库的时间轴,确定待迁移数据中的当前目标迁移数据;
步骤2052、根据数据迁移指令,从预设的模板数据库中确定出与数据迁移指令对应的迁移模板,迁移模板为事先编辑好的用于数据迁移的脚本框架;
步骤2053、将源数据库信息、目标数据库信息和迁移对象信息添加到确定出的迁移模板中,以形成迁移脚本程序;
步骤2054、执行迁移脚本程序以实现当前目标迁移数据的迁移。
在一些实施例中,在当前目标迁移数据的迁移过程中,按照预设的时间间隔周期性的生成迁移日志;
执行迁移脚本程序以实现当前目标迁移数据的迁移,包括:
当数据迁移任务重启之后,从最后记录的数据位置开始继续从原数据库向新数据库中迁移当前目标迁移数据。
在一些实施例中,在目标数据的迁移过程中,按照预设的时间间隔周期性的记录已迁移到的数据位置;
在一种具体场景中,根据时间分片策略,确定出和时间分片策略对应的一个或者多个第运行节点;将相应节点记录到redis中,重跑任务,数据做好重复跑更新处理。例如,可以通过缓存技术Redis来实现数据迁移分片落地,实现迁移过程的可控,保证数据的可靠性、稳定性和可追溯性。其中,Redis(Remote Dictionary Server),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API,在本实施例中,Redis可以用于缓存存储。
本实施例中,每次应用在启动时会通过配置表(指的是存储数据信息的表)读取已经定义好的数据迁移参数,主要包含迁移的数据对象,迁移周期,每次迁移数据量等。即时服务由于异常中断,相关迁移任务也不会丢失,待服务恢复后,迁移任务不需要人为干预即可自动恢复,稳步迁移数据。
其中,配置表记载了需要迁移的的表名、每次迁移的数据量,数据有效期(如有效期一年,那么表中一年钱的数据都会成为被清理的对象),迁移周期(即每天哪些时间点会执行数据迁移的任务)
时间间隔不一定是固定的,是一个cron表达式,可以灵活设置,比如每天半小时运行一次,也指定可以一周的某个时间点运行一次,也可以一天固定的某些时刻运行等等。
每个迁移任务都可根据业务实际需求配置对应的迁移参数,然后***可以根据配置参数动态生成数据迁移任务,满足不同场景的业务需求。
其中,不同的表数据可以配置不同的迁移参数,如果业务没有特殊要求则根据经验预先配置,后续可业务需要动态修改参数信息
应用启动后,可以通过控制台添加数据迁移的配置,***会自动生成对应的定时任务,周期性的对历史数据进行迁移和归档(会在同数据库新建一张数据结构一样的表用于存储历史数据)。同时,当发现配置参数不合理时,可以及时停掉迁移任务,更新参数后,对应的定时任务会实时更新,不需要重启服务器,方便快捷。
其中,通过监控数据库的运行情况来判断,比如一次迁移数据太多,或者迁移周期太短,上一个迁移任务还未完成,下一个就开始了,任务出现堆积等,导致数据库的cpu消耗过高。
同时,引入redis的发布订阅机制,使得一台服务器上的变动可以同步到集群中的所有服务器,可以保证分布式***中信息的一致性。
其中,服务器启动的时候会根据参数表生产定时任务(迁移任务)保存在服务器的内存中,用户修改配置的请求只会由一台服务器处理,也就只能修改一台服务器的任务。redis的作用就是把一台服务的变动通知到所有服务器(可理解为多台服务器连接到一个redis,任何一台服务器的数据变动,其他服务器都可以感知到)。
任务调度模块主要负责定时任务的管理,实际的数据迁移过程在数据库完成,可以降低***的耦合性,减轻应用服务器的压力。同时,迁移任务分批提交,即时由于服务异常导致任务失败也不会影响已经提交的迁移任务,降低了数据重新迁移的成本。
在一些实施例中,第二预测单元还包括Dropout层,Dropout层设置在GRU模型与全连接层之间。
具体地,Dropout的原理,直观来说就是在训练网络的时候,以预先设置的概率停止神经单元的输出,这样会使得部分神经单元的“罢工”,意味着每次的网络训练只有一部分数据特征在参与,从而防止网络过多地学习训练集的数据特征,达到防止过拟合的目的。本实施例通过在GRU模型中引入Dropout策略,在一定程度上解决了深层网络模型带来的训练难、收敛慢和过拟合等问题。
如图3所示,在一个实施例中,提供了一种数据迁移装置,该数据迁移装置可以集成于上述的计算机设备1001中,具体可以包括:
指令触发单元311,用于接收数据迁移指令;其中,数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;
获取单元312,用于获取目标数据库的多源性能数据;
特征提取单元313,用于从目标数据库的多源性能数据中提取特征数据;
预测单元314,用于将特征数据输入预测模型中,根据特征数据生成多个不同时间尺度的特征数据,并根据多个不同时间尺度的特征数据得到目标数据库的性能预测结果;
迁移单元315,用于根据性能预测结果,生成迁移数据的迁移规则,根据迁移规则进行待迁移数据的迁移。
在一个实施例中,提出了一种计算机设备,计算机设备可以包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:接收数据迁移指令;其中,数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;获取目标数据库的多源性能数据;从目标数据库的多源性能数据中提取特征数据;将特征数据输入预测模型中,根据特征数据生成多个不同时间尺度的特征数据,并根据多个不同时间尺度的特征数据得到目标数据库的性能预测结果;根据性能预测结果,生成迁移数据的迁移规则,根据迁移规则进行待迁移数据的迁移。
在一个实施例中,提出了一种存储有计算机可读指令的存储介质,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:接收数据迁移指令;其中,数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;获取目标数据库的多源性能数据;从目标数据库的多源性能数据中提取特征数据;将特征数据输入预测模型中,根据特征数据生成多个不同时间尺度的特征数据,并根据多个不同时间尺度的特征数据得到目标数据库的性能预测结果;根据性能预测结果,生成迁移数据的迁移规则,根据迁移规则进行待迁移数据的迁移。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据迁移方法,其特征在于,所述方法包括:
接收数据迁移指令;其中,所述数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;
获取目标数据库的多源性能数据;
从所述目标数据库的多源性能数据中提取特征数据;
将所述特征数据输入预测模型中,根据所述特征数据生成多个不同时间尺度的特征数据,并根据所述多个不同时间尺度的特征数据得到所述目标数据库的性能预测结果;
根据所述性能预测结果,生成所述迁移数据的迁移规则,根据所述迁移规则进行待迁移数据的迁移。
2.根据权利要求1所述的数据迁移方法,其特征在于,所述预测模型包括第一预测单元和第二预测单元;
所述将所述特征数据输入预测模型中,根据所述特征数据生成多个不同时间尺度的特征数据,并根据所述多个不同时间尺度的特征数据得到所述目标数据库的性能预测结果,包括:
将所述特征数据输入第一预测单元中,对所述特征数据进行多个时间尺度的离散小波变换,得到各个时间尺度的第一特征矩阵,所述第一预测单元根据所述第一特征矩阵得到所述目标数据库的第一预测结果;
将所述特征数据输入第二预测单元中,所述第二预测单元对所述特征数据进行多个不同时间尺度的下采样,得到各个时间尺度的第二特征矩阵,所述第二模型根据所述第二特征矩阵得到所述目标数据库的第二预测结果;
聚合所述第一预测结果和所述第二预测结果,得到所述目标数据库的性能预测结果。
3.根据权利要求2所述的数据迁移方法,其特征在于,所述第一预测单元包括小波变换模型和XGBoost模型,所述第二预测单元包括CNN模型和GRU模型;
所述第一预测单元根据所述第一特征矩阵得到所述目标数据库的第一预测结果,包括:
将所述第一特征矩阵输入所述XGBoost模型,得到所述目标数据库性能数据的第一预测结果;
所述所述第二模型根据所述第二特征矩阵得到所述目标数据库的第二预测结果,包括:
将所述第二特征矩阵输入所述CNN模型进行卷积和池化操作,得到多个时间尺度的第一特征向量;
对所述多个时间尺度的第一特征向量进行序列长度的补充,使得所述第一特征向量具有相同维数;
将所述第一特征向量输入所述GRU模型,采用所述GRU模型对所述第一特征向量进行时序分析,生成第二特征向量;
采用预设长度的全连接层及softmax分类器对所述第二特征向量进行分类评分,得到得到所述目标数据库性能数据的第二预测结果。
4.根据权利要求2所述的数据迁移方法,其特征在于,所述聚合所述第一预测结果和所述第二预测结果,得到所述目标数据库的性能预测结果,包括:
通过预设长度的全连接层聚合所述第一预测结果和所述第二预测结果,输出层输出最终的数据迁移结果。
5.根据权利要求1所述的数据迁移方法,其特征在于,所述根据所述性能预测结果,生成所述迁移数据的迁移规则,根据所述迁移规则进行待迁移数据的迁移,包括:
根据所述目标数据库的性能预测结果和所述待迁移数据迁出所述源数据库的时间轴,确定所述待迁移数据中的当前目标迁移数据;
根据所述数据迁移指令,从预设的模板数据库中确定出与所述数据迁移指令对应的迁移模板,所述迁移模板为事先编辑好的用于数据迁移的脚本框架;
将所述源数据库信息、目标数据库信息和迁移对象信息添加到确定出的迁移模板中,以形成迁移脚本程序;
执行所述迁移脚本程序以实现当前目标迁移数据的迁移。
6.根据权利要求5所述的数据迁移方法,其特征在于,在所述当前目标迁移数据的迁移过程中,按照预设的时间间隔周期性的生成迁移日志;
所述执行所述迁移脚本程序以实现当前目标迁移数据的迁移,包括:
当所述数据迁移任务重启之后,从最后记录的数据位置开始继续从所述原数据库向所述新数据库中迁移所述当前目标迁移数据。
7.根据权利要求1所述的数据迁移方法,其特征在于,所述第二预测单元还包括Dropout层,所述Dropout层设置在GRU模型与全连接层之间。
8.一种数据迁移装置,其特征在于,包括:
指令触发单元,用于接收数据迁移指令;其中,所述数据迁移指令包括:源数据库信息、目标数据库信息、和待迁移数据;
获取单元,用于获取目标数据库的多源性能数据;
特征提取单元,用于从所述目标数据库的多源性能数据中提取特征数据;
预测单元,用于将所述特征数据输入预测模型中,根据所述特征数据生成多个不同时间尺度的特征数据,并根据所述多个不同时间尺度的特征数据得到所述目标数据库的性能预测结果;
迁移单元,用于根据所述性能预测结果,生成所述迁移数据的迁移规则,根据所述迁移规则进行待迁移数据的迁移。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项权利要求所述数据迁移方法的步骤。
10.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至7中任一项权利要求所述数据迁移方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210284292.0A CN114610697B (zh) | 2022-03-22 | 2022-03-22 | 数据迁移方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210284292.0A CN114610697B (zh) | 2022-03-22 | 2022-03-22 | 数据迁移方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114610697A true CN114610697A (zh) | 2022-06-10 |
CN114610697B CN114610697B (zh) | 2024-06-28 |
Family
ID=81864339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210284292.0A Active CN114610697B (zh) | 2022-03-22 | 2022-03-22 | 数据迁移方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114610697B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115129661A (zh) * | 2022-08-30 | 2022-09-30 | 东方电气风电股份有限公司 | 一种风场监控***服务器断电重启后数据迁移方法及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111367890A (zh) * | 2020-03-13 | 2020-07-03 | 深圳壹账通智能科技有限公司 | 一种数据迁移的方法、装置、计算机设备及可读存储介质 |
CN111767270A (zh) * | 2020-06-28 | 2020-10-13 | 平安普惠企业管理有限公司 | 数据迁移方法、装置、服务器及存储介质 |
US20210241131A1 (en) * | 2020-01-31 | 2021-08-05 | Oracle International Corporation | Machine Learning Predictions for Database Migrations |
CN113360479A (zh) * | 2021-06-29 | 2021-09-07 | 平安普惠企业管理有限公司 | 数据迁移方法、装置、计算机设备和存储介质 |
CN114091789A (zh) * | 2021-12-15 | 2022-02-25 | 中国平安人寿保险股份有限公司 | 项目数据波动预测方法、装置、计算机设备和存储介质 |
-
2022
- 2022-03-22 CN CN202210284292.0A patent/CN114610697B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210241131A1 (en) * | 2020-01-31 | 2021-08-05 | Oracle International Corporation | Machine Learning Predictions for Database Migrations |
CN111367890A (zh) * | 2020-03-13 | 2020-07-03 | 深圳壹账通智能科技有限公司 | 一种数据迁移的方法、装置、计算机设备及可读存储介质 |
CN111767270A (zh) * | 2020-06-28 | 2020-10-13 | 平安普惠企业管理有限公司 | 数据迁移方法、装置、服务器及存储介质 |
CN113360479A (zh) * | 2021-06-29 | 2021-09-07 | 平安普惠企业管理有限公司 | 数据迁移方法、装置、计算机设备和存储介质 |
CN114091789A (zh) * | 2021-12-15 | 2022-02-25 | 中国平安人寿保险股份有限公司 | 项目数据波动预测方法、装置、计算机设备和存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115129661A (zh) * | 2022-08-30 | 2022-09-30 | 东方电气风电股份有限公司 | 一种风场监控***服务器断电重启后数据迁移方法及*** |
CN115129661B (zh) * | 2022-08-30 | 2022-11-22 | 东方电气风电股份有限公司 | 一种风场监控***服务器断电重启后数据迁移方法及*** |
Also Published As
Publication number | Publication date |
---|---|
CN114610697B (zh) | 2024-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11822975B2 (en) | Systems and methods for synthetic data generation for time-series data using data segments | |
US11640563B2 (en) | Automated data processing and machine learning model generation | |
US10025813B1 (en) | Distributed data transformation system | |
US10885056B2 (en) | Data standardization techniques | |
US20200050968A1 (en) | Interactive interfaces for machine learning model evaluations | |
CN112184872B (zh) | 基于大数据和云计算的游戏渲染优化方法及云端计算中心 | |
EP3540612A1 (en) | Cluster processing method and device for questions in automatic question and answering system | |
US20150051910A1 (en) | Unsupervised Clustering of Dialogs Extracted from Released Application Logs | |
US20230018975A1 (en) | Monolith database to distributed database transformation | |
US20170371922A1 (en) | Database Management for Mobile Devices | |
WO2020140624A1 (zh) | 从日志中提取数据的方法和相关设备 | |
CN114175018A (zh) | 新词分类技术 | |
CN114610697B (zh) | 数据迁移方法、装置、计算机设备和存储介质 | |
CN115249043A (zh) | 数据分析方法、装置、电子设备及存储介质 | |
WO2022095661A1 (zh) | 推荐模型的更新方法、装置、计算机设备和存储介质 | |
CN108268611B (zh) | 一种基于MapReduce的k-means文本聚类的方法及装置 | |
US20150134660A1 (en) | Data clustering system and method | |
CN116303427A (zh) | 数据处理方法及装置、电子设备和存储介质 | |
CN115599871A (zh) | 基于湖仓一体的数据处理***和方法 | |
CN115080607A (zh) | 一种结构化查询语句的优化方法、装置、设备及存储介质 | |
US11042538B2 (en) | Predicting queries using neural networks | |
WO2020256832A1 (en) | Semantic space scanning for differential topic extraction | |
CN107251010B (zh) | 非结构化ui | |
Chihoub et al. | Chameleon: customized application-specific consistency by means of behavior modeling | |
CN113312489B (zh) | 一种基于nlp和图数据库的全景检索***及方法 |
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 |