本发明涉及云计算、数据迁移领域,具体是一种基于数据感知的并发度控制装置及方法。
背景技术:
1、数据感知是指对数据的一些特征信息来对数据进行收集、监测、描述;并发度是指在特定时间段内,系统或应用程序能够同时处理的并发任务或请求的数量。
2、在数据迁移的应用场景中,当前的并发度控制方法通常基于事先设定的固定并发任务数量,无法根据实际数据情况进行动态调整。这种固定并发度的方法往往无法充分利用系统资源。
3、现有技术,如一种数据库的轻量级并发迁移方法[发明](cn112783859a),提出了一种数据库的轻量级并发迁移方法。加载原数据库和目标数据库的配置,根据目标数据库类型加载相应的语法方言,并对配置进行语法校验;基于加载的配置,根据操作系统的资源,动态控制线程开启数量。其基于事先设定的固定并发任务数量,无法根据实际数据情况进行动态调整。
4、综上所述,本发明提出一种基于数据感知的并发度控制装置及方法。
技术实现思路
1、鉴于以上现有技术的不足,发明的目的在于提供方一种基于数据感知的并发度控制装置及方法,提高了数据迁移效率。本发明提供了基于数据感知,应用于数据迁移的动态并发度控制方法及装置,使得每个并发任务能够处理适量的数据量,充分利用系统资源,提高数据迁移的效率。
2、本发明的第一方面,提出了一种基于数据感知的并发度控制装置,包括:
3、数据迁移模块,用于对不同主机进行数据迁移;
4、并发度控制模块,与所述数据迁移模块连接,用于感知所述数据迁移模块中迁移数据属性,对迁移数据属性进行分析,并依据分析结果动态控制所述数据迁移模块的并发度。
5、作为本发明所述的一种优选实施方案,其中,所述迁移数据属性包括文件数量和文件大小。
6、作为本发明所述的一种优选实施方案,其中,所述并发度控制模块包括:
7、数据感知模块,用于收集迁移模块中迁移数据属性;
8、并发度计算模块,用于基于数据感知模块收集的迁移数据属性计算并发度;
9、并发度调整模块,用于依据并发度计算模块计算结果动态调整并发度。
10、作为本发明所述的一种优选实施方案,其中,所述数据感知模块包括:
11、文件数量感知模块,用于感知迁移文件数量;
12、文件大小感知模块,用于感知文件大小。
13、本发明的第二方面,提出了一种基于数据感知的并发度控制方法,其包括:
14、步骤s1,数据迁移模块初始化,数据迁移模块对不同主机的数据进行迁移;
15、步骤s2,并发度控制模块初始化,并发度控制模块初始化内容包括:数据感知模块初始化、并发度计算模块初始化、并发度动态调整模块初始化;
16、步骤s3,动态调整迁移任务的并发度,实时感知传输文件信息、变更计算并发度信息,并动态控制数据迁移模块的并发度。
17、作为本发明所述的一种优选实施方案,其中,所述步骤s3,动态调整迁移任务的并发度的步骤包括:
18、s3.1数据感知模块感知迁移文件的文件大小和文件数量,
19、s3.2迁移过程中,并发度计算模块基于数据感知模块获取的文件大小和文件数量属性,计算得到适合当前迁移情况的并发度,
20、s3.3并发度动态调整模块根据s3.2计算得到的并发度的变化,向数据迁移模块发送并发度变化指令,动态控制数据迁移模块的并发度。
21、作为本发明所述的一种优选实施方案,其中,所述步骤s3.1数据感知模块感知迁移文件的文件大小和文件数量的步骤包括:
22、数据感知模块对需要迁移的数据文件进行扫描统计,其中文件数量为n;文件大小为f1,f2,f3…fn。
23、作为本发明所述的一种优选实施方案,其中,所述步骤s3.2的流程如下:
24、第i个文件完成迁移后,记第i个文件迁移cpu处理时间与io时间比值为ri,将文件大小作为权重对象,对ri进行处理,得到接着依据dri计算并发度,其中,ri为文件复杂度系数,ri越大则文件复杂度越高,处理传输时压力重心在cpu,ri越小则文件结构越简单,处理传输时压力重心在io;dri为文件传输压力系数,dri越大则文件传输的设备压力越大,dri越小则文件传输的设备压力越小。
25、作为本发明所述的一种优选实施方案,其中,所述并发度计算公式如下:
26、ci=min(2*ncpu,ncpu*(1+dri)));
27、其中ci为并发度,ncpu为迁移工具所在设备的cpu数量。
28、作为本发明所述的一种优选实施方案,其中,所述步骤s3.3的流程如下:
29、并发度调整模块获取当前并发度ci,与上一次并发度ci―1比较,得到并发度变化值δc=ci―ci―1;
30、当δc>1时,并发度调整模块向迁移工具发送并发度调整指令;实现动态的并发度控制。
31、本发明有益效果如下:
32、本发明提供了基于数据感知,应用于数据迁移的动态并发度控制方法及装置,使得每个并发任务能够处理适量的数据量,充分利用系统资源,提高数据迁移的效率;通过根据数据量和文件大小等指标,动态调整并发任务的数量和调度策略,实现数据迁移过程中的高效性和稳定性。
1.一种基于数据感知的并发度控制装置,其特征在于,包括:
2.根据权利要求1所述的一种基于数据感知的并发度控制装置,其特征在于,所述迁移数据属性包括文件数量和文件大小。
3.根据权利要求2所述的一种基于数据感知的并发度控制装置,其特征在于,所述并发度控制模块包括:
4.根据权利要求3所述的一种基于数据感知的并发度控制装置,其特征在于,所述数据感知模块包括:
5.一种基于数据感知的并发度控制方法,其特征在于,所述方法应用于权利要求1-4任一项所述装置,所述方法包括:
6.根据权利要求5所述的一种基于数据感知的并发度控制方法,其特征在于,所述步骤s3,动态调整迁移任务的并发度的步骤包括:
7.根据权利要求6所述的一种基于数据感知的并发度控制方法,其特征在于,所述步骤s3.1数据感知模块感知迁移文件的文件大小和文件数量的步骤包括:
8.根据权利要求7所述的一种基于数据感知的并发度控制方法,其特征在于,所述步骤s3.2的流程如下:
9.根据权利要求8所述的一种基于数据感知的并发度控制方法,其特征在于,所述并发度计算公式如下:
10.根据权利要求9所述的一种基于数据感知的并发度控制方法,其特征在于,所述步骤s3.3的流程如下: