一种对云计算内部物理机信息内存池的管理方法

文档序号:6398562阅读:359来源:国知局
专利名称:一种对云计算内部物理机信息内存池的管理方法
技术领域
本发明涉及云计算领域中对较多计算节点的快速高效的管理和信息查询技术领域,具体地说是一种对云计算内部物理机信息内存池的管理方法。
背景技术
云计算是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。整个运行方式很像电网。而对物理机信息的管理和索引对实现云计算的调度,监控等其他高级功能起着基础性的作用。因此,开发一种可以高效的实现对大规模的云计算物理机的信息管理和查找的方法有着重要的意义。在物理机信息的存储和管理上,采用此种方法可以对指定物理机进行快速的定位查询。并通过Hash和链表的自维护操作,使在代码量较小和算法比较简单的情况下,就可实现对大量物理机的高效管理。

发明内容
本发明的技术任务是解决现有技术的不足,提供一种对云计算内部物理机信息内存池的管理方法。本发明的技术方案是按以下方式实现的,米用Hash表和双向循环链表的组合结构的方式,进行物理机相关信息的存储,在物理机规模数量较大时,通过Hash实现了物理机信息较快速的定位和查找,管理步骤如下:
O首先将物理机的确定唯一标识进行Hash,并按照Hash值将其记录挂在哈希表的相应位置;
2)采用冲突链方式处理冲突,冲突链使用双向循环链表自维护;
3)将可用的空闲物理机通过双向循环链表FreeLink进行串联;
4)发生故障的物理机将从FreeLink中摘下,并通过双向循环链表ErrorLink关联,已使用的物理机则通过SequenceLink关联;
5)当对物理机信息查找时,首先该物理机的确定唯一标识进行Hash,只需遍历Hash值对应的链表即可,从而有效地缩短链表遍历长度,进而缩短了查询时间;
6)未使用的物理机、发生故障的物理机和已使用的物理机的信息数据结构允许互斥的方式挂在不同的链表中,从而最大程度的缩小了数据的冗余;
7)对于新增加的分类,只需要在FreeLink、ErrorLink、SequenceLink结构后,加入类似的双向循环链表结构即可,不需要改动大量的代码,具有较好的适应性和拓展性。本发明的有益效果是:采用Hash表和双向循环链表的组合结构的方式,进行物理机相关信息的存储。在物理机规模数量较大时,通过Hash实现了物理机信息较快速的定位和查找。无论物理机节点是处于空闲库中、正在使用还是处于故障库中,单一物理机节点的信息只在内存中储存一次,减少了数据冗余和空间占用,有效地减少了算法的空间复杂度。同时,各个双向循环链表可以自维护,减少了维护链表操作的代码量。对于不同类型的链表,通过指向物理机信息数据结构指针的偏移,只需要使用同一套遍历、查找、插入、删除的代码操作,即可实现对所有链表的操作。并且该结构易于维护拓展,当需要新增加一种类型库时(比如高负荷物理主机库),基本结构和算法不需要变更,只需在物理机信息数据结构中再增加一对指向新类型链表的指针即可。


图1、图2是内存池管理数据结构示意图。
具体实施例方式下面结合附图对本发明的方法作进一步详细说明。
实施例管理步骤如下:
O首先将物理机的确定唯一标识(如MAC、主机编号等)进行Hash,并按照Hash值将其记录挂在哈希表的相应位置;
2)采用冲突链方式处理冲突。冲突链使用双向循环链表自维护;
3)将可用的空闲物理机通过双向循环链表FreeLink进行串联;
4)发生故障的物理机将从FreeLink中摘下,并通过双向循环链表ErrorLink关联。已使用的物理机则通过SequenceLink关联;
5)当对物理机信息查找时,首先该物理机的确定唯一标识进行Hash,只需遍历Hash值对应的链表。从而能有效的缩短链表遍历长度,进而缩短了查询时间;
6)未使用的物理机、发生故障的物理机和已使用的物理机的信息数据结构可以互斥的挂在不同的链表中。从而最大程度的缩小了数据的冗余;
7)对于新增加的分类,只需要在FreeLink、ErrorLink、SequenceLink结构后加入类似的双向循环链表结构即可。不需要改动大量的代码,具有较好的适应性和拓展性。除本发明的说明书公开的技术特征外均为本专业技术人员的公职技术。
权利要求
1.一种对云计算内部物理机信息内存池的管理方法,其特征在于,采用Hash表和双向循环链表的组合结构的方式,进行物理机相关信息的存储,在物理机规模数量较大时,通过Hash实现了物理机信息较快速的定位和查找,管理步骤如下: O首先将物理机的确定唯一标识进行Hash,并按照Hash值将其记录挂在哈希表的相应位置; 2)采用冲突链方式处理冲突,冲突链使用双向循环链表自维护; 3)将可用的空闲物理机通过双向循环链表FreeLink进行串联; 4)发生故障的物理机将从FreeLink中摘下,并通过双向循环链表ErrorLink关联,已使用的物理机则通过SequenceLink关联; 5)当对物理机信息查找时,首先该物理机的确定唯一标识进行Hash,只需遍历Hash值对应的链表即可,从而有效地缩短链表遍历长度,进而缩短了查询时间; 6)未使用的物理机、发生故障的物理机和已使用的物理机的信息数据结构允许互斥的方式挂在不同的链表中,从而最大程度的缩小了数据的冗余; 7)对于新增加的分类,只需要在FreeLink、ErrorLink、SequenceLink结构后,加入类似的双向循环链表结构即可,不需要改动大量的代码,具有较好的适应性和拓展性。
全文摘要
本发明提供一种对云计算内部物理机信息内存池的管理方法,一种恰当的对云计算内部物理机的各个资源在内存池中动态自维护管理的方法,最终实现云计算平台利用该技术,可以在具有较多物理机存在时,方便的定位查找各个主机的实时信息,有效地进行云计算资源的监测、管理和调度,为云计算的其他复杂功能提供业务决策基础。无论物理机节点是处于空闲库中、正在使用还是处于故障库中,单一物理机节点的信息只在内存中储存一次,减少了数据冗余和空间占用,减少了维护链表操作的代码量,对于不同类型的链表,通过指向物理机信息数据结构指针的偏移,只需要使用同一套遍历、查找、插入、删除的代码操作,即可实现对所有链表的操作。
文档编号G06F12/02GK103092767SQ20131002882
公开日2013年5月8日 申请日期2013年1月25日 优先权日2013年1月25日
发明者赵仁明, 朱波, 郭锋 申请人:浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1