本发明涉及流式计算,尤其涉及一种基于大数据流式计算的可靠性资源调度方法及装置。
背景技术:
1、随着各行各业新技术的不断发展,人类已经全面进入了大数据和人工智能时代。每天由各行各业、各个领域产生的大规模数据呈几何式和爆炸式的增长趋势。但为了在大数据处理过程中,保证流数据处理的可靠性及实时性,需要对大规模数据的分析和处理进行资源计算,以进行资源调度。
2、现有的资源调度技术为基于并行执行循环数据流程序的模型,进而对流式数据进行批处理和低时延的资源调度。实际应用中,在进行资源调度的过程中,未考虑资源的动态变化对资源可靠性调度的影响,从而对进行资源调度时的可靠性较低。
技术实现思路
1、本发明提供一种基于大数据流式计算的可靠性资源调度方法及装置,其主要目的在于解决进行资源调度时的可靠性较低的问题。
2、为实现上述目的,本发明提供的一种基于大数据流式计算的可靠性资源调度方法,包括:
3、s1、获取预设的流式数据,提取所述流式数据中的子任务,根据所述子任务构建所述流式数据对应的数据流图;
4、s2、提取所述数据流图中每个资源节点的动态性能特征,根据所述动态性能特征确定所述每个资源节点的初始资源活动向量,其中所述提取所述数据流图中每个资源节点的动态性能特征,包括:
5、s21、获取所述每个资源节点的节点度和节点介数;
6、s22、根据所述节点度及所述节点介数计算所述每个资源节点的初始负载;
7、s23、利用如下的负载计算公式根据所述初始负载计算所述每个资源节点的临界负载:
8、
9、其中,li为第i个资源节点的临界负载,k为临界负载系数,a为容忍负载系数,fi为第i个资源节点的初始负载,b为负载调节参数,wi为第i个资源节点的权重系数,n为资源节点的数量;
10、s24、将所述临界负载作为所述每个资源节点的动态性能特征;
11、s3、获取所述每个资源节点的资源利用率变化值,按照预设的时间间隔根据所述资源利用率变化值对所述初始资源活动向量进行动态更新,得到动态资源活动向量;
12、s4、利用预设的资源熵算法根据所述动态资源活动向量计算所述每个资源节点的资源熵,通过预设的心跳间隔根据所述资源利用率变化值及所述资源熵计算所述每个资源节点的节点可靠性值;
13、s5、根据所述节点可靠性值确定所述数据流图中每个资源组的资源组可靠性值,利用预设的动态资源调度算法根据所述资源组可靠性值进行资源调度。
14、可选地,所述根据所述子任务构建所述流式数据对应的数据流图,包括:
15、根据所述子任务确定所述流式数据的有限变迁集合;
16、通过所述有限变迁集合确定所述流式数据的流关系;
17、根据所述流关系及预设的流图参数确定所述流式数据的边流量值;
18、根据所述边流量值及所述流关系生成所述流式数据的数据流图。
19、可选地,所述根据所述流关系及预设的流图参数确定所述流式数据的边流量值,包括:
20、获取所述流图参数中的数据传输速率;
21、通过如下的容量值计算公式根据所述数据传输速率及所述流关系计算所述流式数据的边容量值:
22、
23、其中,g为所述边容量值,vi为所述流关系中第i个资源节点,t为所述流关系中的汇点,v为所述流关系中所有资源节点的集合,g(vi,t)为第i个资源节点到汇点t的数据传输速率;
24、利用预设的流量算法根据所述边容量值计算所述流式数据的边流量值,其中,所述流量算法为:
25、
26、其中,d为所述边流量值,g(vi,vj)为所述流关系中边(vi,vj)的边容量值,gp为所述流关系中优化路径对应的边容量增量,p所述流关系中的优化路径,(vi,vj)为所述流关系中资源节点vi到资源节点vj的边。
27、可选地,所述根据所述动态性能特征确定所述每个资源节点的初始资源活动向量,包括:
28、根据所述动态性能特征确定所述每个资源节点的资源占用时间;
29、利用预设的时间滑动窗口对所述资源占用时间进行更新,得到所述每个资源节点的初始资源占用时间;
30、根据所述资源占用时间计算所有资源节点的资源总占用时间;
31、根据所述初始资源占用时间及所述资源总占用时间确定所述每个资源节点的初始资源活动向量。
32、可选地,所述按照预设的时间间隔根据所述资源利用率变化值对所述初始资源活动向量进行动态更新,得到动态资源活动向量,包括:
33、根据所述时间间隔及所述资源利用率变化值生成所述每个资源节点的资源向量矩阵;
34、根据所述资源向量矩阵确定所述每个资源节点的资源变化均值;
35、根据所述资源变化均值对所述初始资源活动向量进行动态更新,得到所述动态资源活动向量。
36、可选地,所述利用预设的资源熵算法根据所述动态资源活动向量计算所述每个资源节点的资源熵,包括:
37、统计所述动态资源活动向量大于预设的向量阈值的第一数量;
38、统计所述动态资源活动向量小于预设的向量阈值的第二数量;
39、利用如下所述预设的资源熵算法根据所述第一数量及所述第二数量计算所述每个资源节点的资源熵:
40、
41、其中,ri为第i个资源节点的资源熵,c1为所述第一数量,c2为所述第二数量,si为第i个资源节点的节点占比值。
42、可选地,所述通过预设的心跳间隔根据所述资源利用率变化值及所述资源熵计算所述每个资源节点的节点可靠性值,包括:
43、通过所述心跳间隔对所述资源利用率变化值进行更新,得到更新资源利用率变化值;
44、按照所述心跳间隔计算所述更新资源利用率变化值的资源平均变化率;
45、利用如下的可靠性计算公式根据所述资源平均变换率及所述资源熵计算所述每个资源节点的节点可靠性值:
46、ki=n·vi·(1-ai)·(1-ri)
47、其中,ki为第i个资源节点的节点可靠性值,n为资源节点数量,vi为第i个资源节点的处理速度,ai为第i个资源节点的资源平均变化率,ri为第i个资源节点的资源熵。
48、可选地,所述根据所述节点可靠性值确定所述数据流图中每个资源组的资源组可靠性值,包括:
49、根据所述临界负载对所述数据流图中每个资源节点进行划分,得到划分资源节点,汇集所述划分资源节点为资源组;
50、获取所述资源组中每个资源节点对应的节点可靠性值,根据所述节点可靠性值确定所述资源组的资源组可靠性值。
51、可选地,所述利用预设的动态资源调度算法根据所述资源组可靠性值进行资源调度,包括:
52、当所述资源组可靠性值大于预设的可靠性阈值时,确定所述资源组的资源组容量值;
53、当所述资源组容量值小于预设的容量阈值时,利用所述动态资源调度算法对所述资源组进行数据状态迁移,得到资源迁移数据;
54、利用预设的资源调度节点对所述资源迁移数据进行资源调度。
55、为了解决上述问题,本发明还提供一种基于大数据流式计算的可靠性资源调度装置,所述装置包括:
56、数据流图构建模块,用于获取预设的流式数据,提取所述流式数据中的子任务,根据所述子任务构建所述流式数据对应的数据流图;
57、初始资源活动向量确定模块,用于提取所述数据流图中每个资源节点的动态性能特征,根据所述动态性能特征确定所述每个资源节点的初始资源活动向量;
58、初始资源活动向量更新模块,用于获取所述每个资源节点的资源利用率变化值,按照预设的时间间隔根据所述资源利用率变化值对所述初始资源活动向量进行动态更新,得到动态资源活动向量;
59、节点可靠性值计算模块,用于利用预设的资源熵算法根据所述动态资源活动向量计算所述每个资源节点的资源熵,通过预设的心跳间隔根据所述资源利用率变化值及所述资源熵计算所述每个资源节点的节点可靠性值;
60、资源调度模块,用于根据所述节点可靠性值确定所述数据流图中每个资源组的资源组可靠性值,利用预设的动态资源调度算法根据所述资源组可靠性值进行资源调度。
61、本发明实施例通过构建流式数据的数据流图,进而根据数据流图确定每个资源节点的动态性能特征,并根据动态性能特征确定每个资源节点的初始资源活动向量,有利于降低资源调度过程中资源节点的负载程度,提高资源调度的效率;根据预设的资源利用率变化值对初始资源活动向量进行动态更新,以便实时掌握资源利用的情况,便于保证资源调用的准确性;根据动态资源活动向量计算每个资源节点的资源熵,并根据资源熵确定资源节点的可靠性值,进而根据可靠性进行资源调度,可以提高资源调度的可靠性。因此本发明提出的基于大数据流式计算的可靠性资源调度方法及装置,可以解决进行资源调度时的可靠性较低的问题。