本发明涉及大数据,尤其涉及一种资源管理系统、方法、电子设备及存储介质。
背景技术:
1、随着大数据技术的不断发展,大数据应用场景不断增多,处理海量数据的需求也越来越强烈。在处理海量数据时,大多数企业会采用大数据集群执行海量数据处理任务。
2、大数据集群通常是由多个可用于数据处理的机器构成的,该机器可以是服务器或计算机等。构建高效、可靠的大数据集群已经成为了许多企业和组织的重要战略之一。
技术实现思路
1、有鉴于此,本发明实施例提供了一种资源管理系统、方法、电子设备以及存储介质,以提高大数据集群中资源使用情况分析准确性,从而提高大数据集群中的资源利用率,构建出高效可靠的大数据集群。
2、根据本发明的一方面,提供了一种资源管理系统,所述系统包括:计算资源管理模块、存储资源管理模块以及资源控制决策模块;
3、所述计算资源管理模块,用于基于大数据集群中各任务的计算资源使用数据,确定各所述任务的计算资源冗余量是否超过预设冗余阈值;将计算资源冗余量超过所述预设冗余阈值的冗余任务信息发送至所述资源控制决策模块;
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、所述机器资源管理模块,用于采集所述大数据集群中各机器节点的机器资源使用数据,并展示;所述机器资源使用数据包括cpu资源使用数据以及存储空间使用数据;
31、所述资源控制决策模块,用于在接收到针对机器节点资源分配请求的情况下,按照所述机器节点资源分配请求对各机器节点的资源进行重新分配;所述机器节点资源分配请求为基于所述展示的各机器节点的资源使用数据发出。
32、根据本发明的另一方面,提供了一种资源管理方法,所述方法包括:
33、基于大数据集群中各任务的计算资源使用数据,确定各所述任务的计算资源冗余量是否超过预设冗余阈值;
34、基于各所述任务的存储资源使用数据,构建数据血缘;所述数据血缘用于表征数据之间的依赖关系;基于所述数据血缘中各数据的访问频次,确定冗余数据;
35、基于所述计算资源冗余量超过所述预设冗余阈值的冗余任务信息以及所述冗余数据,对所述大数据集群中各任务的资源进行调度;所述资源包括计算资源以及存储资源。
36、在一种可能的实施例中,所述计算资源使用数据包括:计算资源使用值;各所述任务的计算资源冗余量与预设的所述任务的计算资源分配值正相关,与所述任务的计算资源使用值负相关;
37、所述方法还包括:
38、采集所述大数据集群中的集群资源使用数据以及队列资源使用数据;所述集群资源使用数据中包括集群资源使用值;所述队列资源使用数据中包括队列资源使用值;
39、确定大数据集群的集群资源冗余量是否超过预设集群资源冗余阈值,所述集群资源冗余量与预设集群资源预留值正相关,与所述集群资源使用值负相关;
40、确定队列资源冗余量是否超过预设队列资源冗余阈值;所述队列资源冗余量与预设队列资源预留值正相关,与所述队列资源使用值负相关;
41、在存在计算资源冗余量超过所述预设冗余阈值的冗余任务和/或在接收到所述集群冗余信息的情况下,向所述资源控制决策模块发送任务资源冗余信息;
42、在队列资源冗余量超过预设队列资源冗余阈值的情况下,重新分配队列资源;和/或,在存在计算资源冗余量超过所述预设冗余阈值的冗余任务和/或集群资源冗余量超过预设集群资源冗余阈值的情况下,对所述大数据集群中的计算资源进行重新分配。
43、在一种可能的实施例中,所述方法还包括:
44、基于所述集群资源使用数据,生成集群潮汐数据,所述集群潮汐数据用于标识所述集群资源使用值随时间的变化情况;
45、基于所述队列资源使用数据,生成队列潮汐数据,所述队列潮汐数据用于标识所述队列资源使用值随时间的变化情况;
46、所述在队列资源冗余量超过预设队列资源冗余阈值的情况下,重新分配队列资源;和/或,在存在计算资源冗余量超过所述预设冗余阈值的冗余任务和/或集群资源冗余量超过预设集群资源冗余阈值的情况下,对所述大数据集群中的计算资源进行重新分配,包括:
47、在队列资源冗余量超过预设队列资源冗余阈值的情况下,按照所述队列潮汐数据重新分配队列资源;和/或,
48、在存在计算资源冗余量超过所述预设冗余阈值的冗余任务和/或集群资源冗余量超过预设集群资源冗余阈值的情况下,按照所述集群潮汐数据对集群中的计算资源进行重新分配。
49、在一种可能的实施例中,所述基于各所述任务的存储资源使用数据,构建数据血缘;所述数据血缘用于表征数据之间的依赖关系;基于所述数据血缘中各数据的访问频次,确定冗余数据,包括:
50、通过预设文件接口采集存储资源使用数据,所述存储资源使用数据包括:各任务的输入数据存储路径以及输出数据存储路径;将所述存储资源使用数据进行存储;
51、对所述存储资源使用数据进行格式化处理,得到统一格式的存储资源使用数据;
52、基于所述统一格式的存储资源使用数据,构建数据血缘;
53、基于所述统一格式的存储资源使用数据的访问频次,确定访问频次低于预设频次阈值的冗余数据;
54、基于所述数据血缘控制生产所述冗余数据的任务停止生产所述冗余数据,和/或删除所述冗余数据。
55、在一种可能的实施例中,所述方法还包括:
56、对所述存储资源使用数据进行分表以及分区存储;
57、确定将访问频次低于第一预设访问频次的冗余表信息;和/或确定访问频次低于第二预设访问频次的冗余分区信息;
58、按照所述冗余表信息删除对应表,和/或按照所述冗余分区信息删除对应分区。
59、在一种可能的实施例中,所述方法还包括:
60、采集所述大数据集群中各机器节点的机器资源使用数据,并展示;所述机器资源使用数据包括cpu资源使用数据以及存储空间使用数据;
61、在接收到针对机器节点资源分配请求的情况下,按照所述机器节点资源分配请求对各机器节点的资源进行重新分配;所述机器节点资源分配请求为基于所述展示的各机器节点的资源使用数据发出。
62、根据本发明的另一方面,提供了一种电子设备,包括:
63、处理器;以及
64、存储程序的存储器,
65、其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行上述任一所述的资源管理方法。
66、根据本发明的另一方面,提供了一种.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行上述任一所述的资源管理方法。
67、本发明实施例中提供的一个或多个技术方案,通过对大数据集群中的计算资源使用数据以及存储资源使用数据进行自动分析判断,确定是否出现不合理的数据、计算任务等,并按照任务的实际运行情况对大数据集群中的资源进行重新调度,实现对集群中的资源进行全方位自动化分析,提高资源利用分析效率与准确性。