云OS中一种基于内存索引的云主机查询方法技术

技术编号:8682854 阅读:158 留言:0更新日期:2013-05-09 02:47
本发明专利技术提供云OS中一种基于内存索引的云主机查询方法,内容包括:主机相关信息的扫描和收集;建立相关信息的内存索引;解析用户的指令,根据指令进行主机关键字的匹配并根据实时的返回定位结果快速的从索引中查询定位出主机,其中,主机相关信息的扫描和收集是该方法的第一步,通过扫描保存主机信息的配置文件或数据库,将所需要的基本信息读取至内存中,为第二部建立内存索引做准备;建立相关信息的内存索引是该方法的第二步,通过第一步读入的每个主机的状态,对待查询的关键字进行单字节或双字节的索引;解析用户的指令,从索引中查询定位出主机是该方法的第三部,通过对待查询的索引链表的表查找和求交操作,将所得的一个或多个结果信息实时反馈给用户,最终定位出主机。

【技术实现步骤摘要】

本专利技术涉及云OS中内存索引的领域,具体地说是云OS中一种基于内存索引的云主机查询方法。
技术介绍
随着信息科技的发展,云计算逐步成为业界的发展热点,国内外各大厂商的云计算服务平台也开始纷纷投入到科学、教育、文化、卫生、政府、高性能计算、电子商务、物联网等多个领域进行使用。在云服务平台中,高效的主机查询和索引不仅是必需的,而且已经成为云计算平台其他功能得以实施的先决条件。主机的定位查询效率的高低,将对整个云平台的信息收集和运营产生巨大的影响。因此,为了迅速、高效的管理云OS中的主机信息,准确地查找定位到主机,大多数云OS提供了主机信息的索引机制。为解决云OS中主机快速定位的问题,我们提出了一种易扩展、高效的基于内存索引的云主机查询方法。
技术实现思路
本专利技术的技术任务是解决现有技术的不足,提供云OS中一种基于内存索引的云主机查询方法。本专利技术的技术方案是按以下方式实现的,内容包括:主机相关信息的扫描和收集;建立相关信息的内存索引;解析用户的指令,根据指令进行主机关键字的匹配并根据实时的返回定位结果快速的从索引中查询定位出主机,其中, 主机相关信息的扫描和收集是该方法的第一步,通过扫描保存主机信息的配置文件或数据库,将所需要的基本信息读取至内存中,为第二部建立内存索引做准备; 建立相关信息的内存索引是该方法的第二步,通过第一步读入的每个主机的状态,对待查询的关键字进行单字节或双字节的索引; 解析用户的指令,从索引中查询定位出主机是该方法的第三部,通过对待查询的索引链表的表查找和求交操作,将所得的一个或多个结果信息实时反馈给用户,最终定位出主机; 具体步骤如下: 1)初始化云主机的信息,获取云主机的基本信息,包括:主机名、IP地址、主机存放位置编号、主机MAC、硬件配置; 2)对云主机信息的指定关键字建立内存索引:取得一条初始化的云主机信息,取得此信息索引关键字的第一个字符,将此主机的信息挂在以索引关键字第一个字符的Hash值为下标的链表数组的单字符索引链表上,同时,也将此主机信息挂在以索引关键字第一个和第二个字符的Hash值为下标的另一双字符索引链表上,然后,继续本记录关键字的第二个字符,第三个字符,第三四个字符…依此类推,直到关键字的末尾,然后取得下一条云主机信息,对其索引关键字重复上述过程,最后直至所有云主机信息的索引建立完毕,每次将索引挂入链表时进行判断,保证对于同一条记录的同样的关键字,在单字符和双字符索引链表中只挂一次,以有效地提高查找效率。本专利技术的有益效果:本专利技术的创新点在于创新的在内存中建立一系列的索引,使得云主机的定位和查询效率得到进一步的提升。此方法在内存中实现索引,对程序使用者来说较传统方法有更高的使用透明度、灵活度和更高的查询效率。同时,本专利技术在实现内存索引的过程中,创新地提出了一种内存链表快速进行多路求交的计算方式。通过为加入链表中每个不同元素设置不同的权值,可以不必进行每个链表的依次全部遍历完成,即可求出链表交集。附图说明 图1为该方法的实现流程示意图。具体实施例方式下面结合附图对本专利技术的方法作进一步详细说明。体系结构主要包括:初始化云主机的信息,对云主机信息的指定关键字建立内存索引,解析用户的指令,根据指令进行主机关键字的匹配并实时的返回定位结果。其中,初始化云主机的信息是该方法第一步,指获取云主机的基本信息(如主机名、IP地址、主机存放位置编号、主机MAC、硬件配置等)。对云主机 信息的指定关键字建立内存索引的主要流程为:取得一条初始化的云主机信息,取得此信息索引关键字的第一个字符,将此主机的信息挂在以索引关键字第一个字符的Hash值为下标的链表数组的单链表上(单字符索引链表)。同时,也将此主机信息挂在以索引关键字第一个和第二个字符的Hash值为下标的另一链表数组上(双字符索引链表)。然后,继续本记录关键字的第二个字符,第二三个字符。第三个字符,第三四个字符…依此类推,直到关键字的末尾。然后取得下一条云主机信息,对其索引关键字重复上述过程。最后直至所有云主机信息的索引建立完毕。每次将索引挂入链表时进行判断,保证对于同一条记录的同样的关键字,在单字符和双字符索引链表中只挂一次,以有效地提高查找效率。实施例此过程的C语言代码实现如下: pos=m—sUUID;while (*pos!=0){ chi =氺pos; ch2 = * (pos+1); if ( chl>0 ){ uCharI =m_iCharMap [chi] ; // 此处根据 Hash 算子,根据 ASCII 值进行了映射;uChar2=m_iCharMap [ch2];本文档来自技高网...

【技术保护点】
云OS中一种基于内存索引的云主机查询方法,其特征在于,内容包括:主机相关信息的扫描和收集;建立相关信息的内存索引;解析用户的指令,根据指令进行主机关键字的匹配并根据实时的返回定位结果快速的从索引中查询定位出主机,其中,主机相关信息的扫描和收集是该方法的第一步,通过扫描保存主机信息的配置文件或数据库,将所需要的基本信息读取至内存中,为第二部建立内存索引做准备;建立相关信息的内存索引是该方法的第二步,通过第一步读入的每个主机的状态,对待查询的关键字进行单字节或双字节的索引;解析用户的指令,从索引中查询定位出主机是该方法的第三部,通过对待查询的索引链表的表查找和求交操作,将所得的一个或多个结果信息实时反馈给用户,最终定位出主机;具体步骤如下:1)初始化云主机的信息,获取云主机的基本信息,包括:主机名、IP地址、主机存放位置编号、主机MAC、硬件配置;2)对云主机信息的指定关键字建立内存索引:取得一条初始化的云主机信息,取得此信息索引关键字的第一个字符,将此主机的信息挂在以索引关键字第一个字符的Hash值为下标的链表数组的单字符索引链表上,同时,也将此主机信息挂在以索引关键字第一个和第二个字符的Hash值为下标的另一双字符索引链表上,然后,继续本记录关键字的第二个字符,第三个字符,第三四个字符…?依此类推,直到关键字的末尾,然后取得下一条云主机信息,对其索引关键字重复上述过程,最后直至所有云主机信息的索引建立完毕,每次将索引挂入链表时进行判断,保证对于同一条记录的同样的关键字,在单字符和双字符索引链表中只挂一次,以有效地提高查找效率。...

【技术特征摘要】
1.OS中一种基于内存索引的云主机查询方法,其特征在于,内容包括:主机相关信息的扫描和收集;建立相关信息的内存索引;解析用户的指令,根据指令进行主机关键字的匹配并根据实时的返回定位结果快速的从索引中查询定位出主机,其中, 主机相关信息的扫描和收集是该方法的第一步,通过扫描保存主机信息的配置文件或数据库,将所需要的基本信息读取至内存中,为第二部建立内存索引做准备; 建立相关信息的内存索引是该方法的第二步,通过第一步读入的每个主机的状态,对待查询的关键字进行单字节或双字节的索引; 解析用户的指令,从索引中查询定位出主机是该方法的第三部,通过对待查询的索引链表的表查找和求交操作,将所得的一个或多个结果信息实时反馈给用户,最终定位出主机; 具体步骤如下: 1)初始化云主机的信...

【专利技术属性】
技术研发人员:赵仁明刘正伟朱波
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1