首页> 中国专利> 虚拟化环境中综合的、相关的和动态的数据搜索

虚拟化环境中综合的、相关的和动态的数据搜索

摘要

一种方法包括通过虚拟化环境中的搜索架构,对虚拟化环境中的一个或多个主机服务器上的联机虚拟机(VM)、脱机VM、虚拟应用和/或其快照中的数据和/或元数据进行索引。所述联机VM是接通的VM,所述脱机VM是断开的VM。所述方法还包括维护所述联机VM、脱机VM、虚拟应用和其快照中的索引的数据和/或元数据的数据库,以通过所述搜索架构对于搜索查询产生综合搜索结果。所述数据库与所述搜索架构相关联。

著录项

  • 公开/公告号CN102169484A

    专利类型发明专利

  • 公开/公告日2011-08-31

    原文格式PDF

  • 申请/专利权人 威睿公司;

    申请/专利号CN201010114852.5

  • 发明设计人 崔亮;许海玲;何英;

    申请日2010-02-26

  • 分类号G06F17/30;G06F15/16;

  • 代理机构北京鸿元知识产权代理有限公司;

  • 代理人陈英俊

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 03:13:16

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-08-13

    授权

    授权

  • 2011-10-12

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20100226

    实质审查的生效

  • 2011-08-31

    公开

    公开

说明书

技术领域

本公开一般涉及虚拟化,更具体地,涉及在虚拟化环境中实现综合的、相关的和动态的数据搜索的方法、装置和系统。

背景技术

商业搜索引擎(例如,)用作为对信息世界的窗口,并且被人们利用来通过在其中执行搜索而获得感兴趣的有用信息。在包括虚拟机(VM)的虚拟化环境中,用户可能不得不管理大量VM和快照(snapshot)。当用户希望找到VM内部的数据时,很可能他/她不记得对应于该数据的VM。因此,用户可能不得不接通每个可能的VM,以查看其中内容,这导致不快的经历。

发明内容

本发明公开了在虚拟化环境中实现综合的、动态的和相关的数据搜索的方法、装置和系统。

在一方面,一种方法包括通过虚拟化环境中的搜索架构,对虚拟化环境中的一个或多个主机服务器上的联机虚拟机(VM)、脱机VM、虚拟应用和/或其快照中的数据和/或元数据进行索引。所述联机VM是接通的VM,以及所述脱机VM是断开的VM。

该方法还包括维护所述联机VM、脱机VM、虚拟应用和/或其快照中的索引的数据和/或元数据的数据库,以通过所述搜索架构产生对于搜索查询的综合搜索结果。所述数据库与所述搜索架构相关联。

在另一方面,一种方法包括通过虚拟化环境中的搜索架构,对虚拟化环境中的一个或多个主机服务器上的联机VM、脱机VM、虚拟应用和/或其快照中的数据和/或元数据进行索引。所述联机VM是接通的VM,以及所述脱机VM是断开的VM。

该方法还包括通过虚拟化环境中的所述搜索架构,基于其中的状态变化,更新联机VM、脱机VM、虚拟应用和/或其快照中的索引的数据和/或元数据,以通过所述搜索架构产生对于搜索查询的相关的和动态的搜索结果。

在又一方面,一种虚拟化环境包括一个或多个主机服务器,其包括联机VM、脱机VM、虚拟应用、和/或其快照。该虚拟化环境还包括搜索架构,其被配置为能对联机VM、脱机VM、虚拟应用和/或其快照中的数据和/或元数据进行索引。

所述联机VM是接通的VM,以及所述脱机VM是断开的VM,并且所述搜索架构包括在联机VM、脱机VM、虚拟应用和/或其快照中的索引的数据和/或元数据的数据库,所述联机VM、脱机VM、虚拟应用和其快照被配置为能通过所述搜索架构对搜索查询产生综合的搜索结果。

本文公开的方法和系统可以用实现各个方面的任何装置来完成,并且可以用包含一组指令的机器可读介质的形式执行,当机器执行该指令时,使该机器执行本文所公开的任何操作。其它特征将从附图和以下详细描述而明显。

附图说明

本发明的实施例通过示例说明,而不受附图限制,在附图中相同的附图标记表示相似的元件,并且在附图中:

图1是根据一个或多个实施例的搜索系统的示意图;

图2是根据一个或多个实施例的在包括内部云和外部云的云计算系统中搜索的示意图;

图3是根据一个或多个实施例的与搜索引擎接口的搜索构架的示意图;

图4是根据一个或多个实施例的包括图3的搜索构架的搜索架构的示意图;

图5是根据一个或多个实施例的与主机服务器的联机虚拟机(VM)和脱机VM交互的图3的搜索构架的示意图;

图6是根据一个或多个实施例的VM套件(suite)级的搜索架构的示意图;

图7是根据一个或多个实施例的、与图1的搜索系统接口的、图3的搜索构架的示意图;

图8是根据一个或多个实施例的VM代理构架的示意图;

图9是根据一个或多个实施例的详细说明VM和图3的搜索构架(或图6的搜索主机代理)之间的交互的流程图;

图10是根据一个或多个实施例的搜索请求参数表;

图11是根据一个或多个实施例的结果结构参数表;

图12是根据一个或多个实施例的结果条目结构参数表;

图13是根据一个或多个实施例的可扩展查询语法和示例的表;

图14是根据一个或多个实施例的、详细说明在虚拟化环境中的综合搜索方法中包括的操作的流程图;

图15是根据一个或多个实施例的、详细说明在虚拟化环境中的、更新索引数据库以启动相关和动态搜索的方法中包括的操作的流程图。

根据附图和以下的详细描述,本发明的其它特征将是显而易见的。

具体实施方式

以下描述的实施例可以用于实现在虚拟化环境中的综合的、动态的和相关的数据搜索。虽然已经参考具体示例性实施例描述了本实施例,但是很明显的是,在不脱离各个实施例的广泛精神和范围的情况下,可以对这些实施例进行各种修改和变化。

图1示出根据一个或多个实施例的搜索系统100。在一个或多个实施例中,搜索系统100可以包括配置为从虚拟化环境(VE)的源获取(例如,下载、抓取、采集)相关数据的抓取(crawling)模块102。在一个或多个实施例中,VE的源可以包括虚拟机(VM)、虚拟应用(vApp)、主机服务器、数据库、和/或目录。在一个或多个实施例中,vApp可以是包括一个或多个VM的容器。在一个或多个实施例中,vApp可以接通和断开,也可以被复制。在一个或多个实施例中,抓取模块102以是分布式的并且在网络利用率方面是高效的。

在一个或多个实施例中,搜索系统100还可以包括与抓取模块102接口的索引模块104。在一个或多个实施例中,索引模块104可以负责对所抓取的数据进行分区和索引。在一个或多个实施例中,索引模块104可以用于通过对所抓取的数据进行分区和索引来建立信息检索(IR)系统。

在一个或多个实施例中,搜索系统100还可以包括与索引模块104接口的查询处理模块106。在一个或多个实施例中,查询处理模块106可以配置为可扩展地处理到达的查询和保持合理的响应时间、可用性和结果的质量。

在一个或多个实施例中,随着更多资源被增加到VE,搜索系统100因此可能需要是可扩展的,以处理增加的工作量。在一个或多个实施例中,抓取模块102、索引模块104和查询处理模块106可以用作为VE中的系统模块。在一个或多个实施例中,搜索系统100可以基于提供观看基础结构以及利用其中提供的服务的功能的虚拟化平台或云计算平台来实现。本文使用的术语云计算环境的含义是包括由特殊软件管理的VM的一组互联计算机,云计算环境通常被称为云操作系统(云OS)。云OS向用户和/或客户端隐藏基础的技术架构细节。用户通常通过云计算环境显露的一组服务与云计算环境进行交互。

在一个或多个实施例中,查询处理模块106可以用分布式方式处理查询。在一个或多个实施例中,可以向用户提供在云计算环境中可以象在现场操作一样管理、移动、和/或操作应用的保证。在一个或多个实施例中,用户感兴趣的云计算初始目录中的数据包括但不限于虚拟应用(vApp)信息、模板和高级媒体文件(premium media file)。另外,在一个或多个实施例中,在云环境中的用户可以具有单独的可视范围。例如,云环境管理员可以搜索所有目录和详细目录信息,但是机构管理员可能受限于他/她所属的机构。

图2示出根据一个或多个实施例的在包括内部云202和外部云204的云计算系统200中的搜索。在一个或多个实施例中,内部云202和外部云204可以进行交互,以便返回综合搜索结果。在一个示例性实施例中,当目标是私有云206的查询208存在时,查询208可以分配到内部云202和外部云204,以便在对查询208的发出者给与适当响应前汇集搜索结果。在一个或多个实施例中,内部云202可以位于企业数据中心,并且可以拥有其中的资产。在一个或多个实施例中,外部云204可以位于外部服务提供商,因此可能收费昂贵。在一个或多个实施例中,私有云206可以专用于机构。在一个或多个实施例中,机构内的多个“业主”可以使用私有云206。在一个或多个实施例中,私有云206可以与公有云相反,该公有云在可能甚至不知道彼此共享的多个机构间共享。

在一个或多个实施例中,为了简化前述查询过程,内部云202和外部云204可以互相联合(即,通过私有云206)成为联合系统,如图2所示,从而构成互相依赖的元件,并且可以访问必要信息。在一个或多个实施例中,在云计算系统200中的分布式搜索系统(图2未示出)中,资源可以包括配置为接收和路由客户查询(例如,查询208)的协调器,配置为包括索引信息的查询处理器,和配置为存储前面的查询搜索结果以便提高性能的高速缓存。在一个或多个实施例中,云中的一个或多个VM可以实现协调器、查询处理器和高速缓存中的每一个。在一个或多个实施例中,为了获得提高的性能,VM可以按区域式(例如,地理的)和网络拓扑式来分组。在一个或多个实施例中,至少两类分组(例如,区域式、网络拓扑式)可以部署在内部云202和外部云204中。显而易见的是可以有多个内部云和外部云(例如,通过多个私有云)进行交互以生成搜索结果。在一个或多个实施例中,搜索功能可以作为附加值提供给云计算系统200的合作伙伴。

在一个或多个实施例中,提供搜索的搜索构架的可扩展性可以是足以容纳在内部云202和外部云204内部设置的多个搜索系统。在一个或多个实施例中,搜索构架可以能通过适当过滤和排名汇集搜索结果。

在一个或多个实施例中,在云计算系统200中的搜索可以产生“私有”结果和组共享结果。在一个或多个实施例中,“私有”结果可以包括与私有云206相关的搜索结果,组共享结果可以包括与私有云206可能属于的组相关的搜索结果。在一个或多个实施例中,搜索结果可以提供例如文件/服务/程序位置(例如,主机服务器、VM、目录)的信息,和可以直接链接到适当的VM和/或目录。

在一个或多个实施例中,搜索结果可以包括来自联机VM(即,接通的VM)和/或脱机VM(即,断开的VM)的结果。在一个或多个实施例中,搜索结果可以指明相关的数据/文件是否与联机VM或脱机VM相关联。在一个或多个实施例中,搜索结果可以在网页浏览器上获得,多个相关虚拟应用(vApp)/VM和相关联的数据/文件可以汇总为搜索结果的一部分。在一个或多个实施例中,除了相关的搜索结果以外,可以提供将脱机VM接通和/或将联机VM断开的选项。

图3是根据一个或多个实施例的与搜索引擎330接口的搜索构架300。在一个或多个实施例中,搜索构架300可以包括配置为下面描述的与联机VM(即,接通的VM)代理通信的联机VM适配器302和传送与联机VM相关联的索引数据。在一个或多个实施例中,脱机VM适配器304用于读取脱机状态中的VM的文件系统。在一个或多个实施例中,VM的文件系统包含在VM的虚拟磁盘文件中,脱机VM适配器304包括知道虚拟磁盘文件的具体数据结构的驱动器。在一个或多个实施例中,脱机VM适配器304可以配置为提供安装和索引与脱机VM(即,已经断开的VM)相关联的虚拟磁盘图像文件的功能。在一个或多个实施例中,脱机VM适配器304也可以配置为脱机读/写虚拟磁盘图像文件,能读取在给定快照(即,在过去瞬间的文件/目录的副本)中的文件,和维护分区表。在一个或多个实施例中,整个主机服务器或桌面环境可以由磁盘图像文件中的虚拟磁盘或VM重新创建。在一个或多个实施例中,VM磁盘格式说明可以描述和记录VM环境,和可以指定其中的存储器。

在一个或多个实施例中,脱机VM适配器304也可以配置为传送已有的索引数据。在一个或多个实施例中,搜索构架300可以包括配置为生成用于给定虚拟磁盘卷(volume)的索引数据。在一个或多个实施例中,索引合并器308可以将所有索引数据合并到与搜索构架300接口的本地索引存储器326中。因此,在一个或多个实施例中,索引任务可以包括联机VM索引数据采集、脱机VM索引生成、和/或索引更新和合并。具体地,在一个或多个实施例中,索引合并器308可以配置为汇集来自VM的索引文件、维护快照索引文件、更新关于例如电源状态变化、快照/恢复、和/或删除/添加的VM事件的索引数据,和配合搜索服务提供器314通过严格定义的应用程序编程接口(API)提供搜索,以选择索引数据库(例如,当前的、快照)。

在一个或多个实施例中,搜索构架300也可以包括配置为管理第三方搜索引擎插件(例如,静态插件、动态插件)的搜索引擎管理器310。因此,在一个或多个实施例中,搜索引擎管理器310可以配置为提供使用第三方搜索引擎(例如,搜索引擎330)的功能。在一个或多个实施例中,包括在搜索构架300中的搜索处理器312可以配置为提供处理大量搜索请求的功能。在一个或多个实施例中,搜索服务提供器314可以配置为提供标准的搜索服务,对中心索引数据库(例如,搜索数据库328)和/或快照索引数据库进行搜索的功能,汇集分散的搜索结果,和/或信息性搜索结果的功能。因此,在一个或多个实施例中,搜索服务提供器314可以配置为接收和处理搜索结果。在一个或多个实施例中,搜索请求可以通过例如虚拟环境(VE)客户端(例如,的虚拟基础结构(VI)客户端)、的Flex、和/或内置的搜索网页用户接口(UI)发出。

在一个或多个实施例中,搜索构架300还可以包括配置为与集中管理器406通信的扩展管理器316,和管理例如库、配置数据文件和扩展登记的扩展。本文使用的术语“集中管理器”的含义是提供配置和管理虚拟化基础结构的一个或多个主机服务器、虚拟机(VM)、和其它组件的机制的管理软件。例如,的VirtualCenterTM(VCTM)提供相同或相似的功能。相似的管理软件也可以从例如等厂商获得。在一个或多个实施例中,访问控制器318可以配置为提供认证和授权服务,或者,换句话说,执行安全策略。在一个或多个实施例中,事件监控器320可以配置为监测和通知例如VM接通/断开和主机服务器的VM的实时迁移(例如,通过的vMotionTM或其它厂商的类似产品)等事件,目的是使将要被索引的数据适当同步。在一个或多个实施例中,商品目录管理器322可以配置为与VM/主机服务器/适当的产品进行通信,以获得商品目录的特性。

在一个或多个实施例中,可以利用搜索构架300从云OS管理的所有VMk搜索信息。在一个或多个实施例中,用户能将其搜索范围从数据中心级限制为主机服务器级。在一个或多个实施例中,搜索请求可以预计通过网页UI(例如,的Flex)和/或VE客户端发出。在一个或多个实施例中,搜索构架300可以部署为云OS(例如,的vSphereTM)环境中的VM图像(例如,虚拟装置(VA)),以便省去安装、配置和维护成本。在一个或多个实施例中,搜索构架300可以实现为包括管理和性能分离益处的云OS的扩展。在一个或多个实施例中,当实现为VM图像时,搜索构架300可以部署在主机服务器侧。

图4示出根据一个或多个实施例的包括图3的搜索构架300的搜索架构400。在一个或多个实施例中,VE客户端/网页UI 402可以是如上所述的搜索请求的起源。在一个或多个实施例中,搜索构架300可以用作配置为接受来自VE客户端/网页UI 402的搜索请求、和以适当格式发回查询结果的搜索服务提供器。在一个或多个实施例中,搜索构架300可以负责对来自所有被管理的主机服务器(例如,主机服务器404)的VM的索引数据进行采集/合并、解析和存储。在一个或多个实施例中,集中管理器406可以向搜索构架300提供商品目录和认证(例如,用户认证)服务。在一个或多个实施例中,搜索构架300可以与集中管理器406集成,以便增强集中管理器406的性能,和获得关于集中管理器406所管理的VM的信息。

在一个或多个实施例中,搜索构架300可以配置为允许第三方搜索/索引库(例如,的LuceneTM)的插件。在一个或多个实施例中,搜索构架300可以具有如上所述访问控制器318,其配置为与集中管理器406进行交互,以提供访问控制功能。在一个或多个实施例中,搜索构架300可以具有配置为关联索引数据库408,所述索引数据库408包括与VM相关的索引。

在一个或多个实施例中,用户可以登录到VE客户端402中并通过搜索栏搜索VM的内容。在另一个示例性实施例中,用户可以登录到由搜索构架300提供的门户网站(Web Portal),并且直接搜索VM的内容。在一个或多个实施例中,搜索结果可以在VE客户端402和/或网页浏览器中显示。在一个或多个实施例中,每个搜索结果可以提供例如文件/服务/程序位置(例如,主机服务器、VM、目录)的信息,和可以直接链接到适当的VM和/或目录。在一个或多个实施例中,搜索结果可以指明私有数据和可以包括来自联机VM(即,接通的VM)和/或脱机VM(即,断开的VM)的结果。在一个或多个实施例中,搜索结果可以指明相关数据/文件是否与联机VM和/或脱机VM相关联。在一个或多个实施例中,除了相关的搜索结果以外,还可以提供将脱机VM接通和/或将联机VM断开的选项。在一个或多个实施例中,搜索结果对云OS可以是“私有的”。在一个或多个实施例中,除了相关数据/文件以外,与VM相关联的OS也可以被汇总/指明为搜索结果的一部分。

在一个或多个实施例中,除了在中小企业(SMB)虚拟化的情况中,来自单个主机服务器404的搜索信息很少在没有部署云OS的情况下使用。因此,在一个或多个实施例中,利用搜索构架300的搜索服务可能不会基于单个主机服务器404提供。然而,在一个或多个实施例中,主机服务器404上的组件可以是用于搜索服务的行为模块。

在一个或多个实施例中,在云OS环境中,可以有两种存储部署,即,例如在中型/大型企业信息技术(IT)环境中共享的存储,和例如在SMB环境中的本地存储。图5示出根据一个或多个实施例的与主机服务器404的联机VM502和脱机VM 504进行交互的搜索构架300。在一个或多个实施例中,为了获得联机VM 502上的数据,OS特定VM代理512可以安装在其中。在一个或多个实施例中,VM代理512可以配置为监测本地文件系统514中的文件变化、采集、解析和存储本地VM 502上的索引数据,促进第三方桌面搜索引擎执行索引,传送和更新搜索构架300的索引数据,和/或执行安全策略。在一个或多个实施例中,安全策略既可以由本地VM所有者也可以由云OS管理员来配置。

更具体地,在一个或多个实施例中,VM代理512可以配置为生成索引或增量索引文件,以监测联机VM 502的文件/服务/程序变化,与搜索构架300通信并向其传送数据0,配置索引属性,和如上所述的增强第三方搜索引擎。

在一个或多个实施例中,为了收集脱机VM 504上的数据,搜索构架300可以配置为将与脱机VM 504相关联的虚拟磁盘图像文件522安装到其文件系统,和执行适当的索引(例如,通过脱机VM适配器304、索引生成器306、索引合并器308)。因此,在一个或多个实施例中,搜索构架300可以负责安装脱机VM 504的虚拟磁盘图像文件522,以及将索引数据采集、解析、和存储到其本地数据库(例如,索引数据库408)中。在一个或多个实施例中,搜索构架300也可以负责执行可以由脱机VM 504的所有者和云OS管理员配置的安全策略。

在一个或多个实施例中,VM组级(例如,的WorkstationTM或其它厂商的类似产品)可以配置为允许多个VM同时执行OS(例如,LinuxTM)的主机。在一个或多个实施例中,在VM套件级,VM套件用户可以拥有所有前述VM,并且可能对例如文档、服务、应用、和特别是快照等VM的内容感兴趣。在一个或多个实施例中,用户通过以下描述的搜索架构可以能搜索、查看、比较、甚至编辑不同快照的历史文件。

图6示出根据一个或多个实施例的在VM套件级的搜索架构600。在一个或多个实施例中,搜索架构600可以包括主机OS 606,其继而可以包括代替上述搜索构架300的搜索主机代理642。在一个或多个实施例中,搜索主机代理642的功能类似于搜索构架300的功能。在一个或多个实施例中,搜索主机代理642可以作为服务而不是作为VM存在。在一个或多个实施例中,VM套件(未示出)可以与搜索主机代理642、联机VM602、和脱机VM 604接口,并且可以包括VM管理器(未示出)。在一个或多个实施例中,VM管理器可以配置为向搜索主机代理642提供VM静态信息和快照信息,以存储VM用户名/密码,以及通知例如电源状态变化和快照操作(例如,添加、删除、报警)的VM事件。

在一个或多个实施例中,在搜索架构600中,搜索请求608可以检查可能与搜索主机代理642通信的第三方搜索引擎610(例如,DesktopSearchTM,的Windows Desktop SearchTM,的SpotlightTM),以获得将被显示的搜索结果。在一个或多个实施例中,搜索架构600再次示出与主机OS 606接口的联机VM 602和脱机VM 604。在一个或多个实施例中,为了获得联机VM 602上的数据,VM代理612可以安装在其中。在一个或多个实施例中,VM代理612可以配置为监测本地文件系统614中的文件变化,收集、解析、和存储本地VM 602上的索引数据,促进第三方桌面搜索引擎610执行索引,发送和更新在搜索主机代理642的索引数据,和/或执行安全策略。

在一个或多个实施例中,为了收集脱机VM 604上的数据,搜索主机代理642可以配置为将与脱机VM 604的相关联的虚拟磁盘图像文件622安装到其文件系统,和执行适当的索引。因此,在一个或多个实施例中,搜索主机代理642可以负责安装脱机VM 604的虚拟磁盘图像文件622,和将索引数据采集、解析、和存储到其本地数据库(例如,索引数据库408)。在一个或多个实施例中,搜索主机代理642也可以负责执行安全策略。

在一个或多个实施例中,可以定义一组适当的接口用于上述搜索,以允许第三方搜索引擎610厂商(例如,)提供一组相应的API以与搜索构架300(或搜索主机代理642)集成。在一个或多个实施例中,这可以增强搜索的扩展性。在一个或多个实施例中,搜索构架300可以与图1的搜索系统100接口,如图7所示。在一个或多个实施例中,搜索构架300通过一组严格定义的和统一的API可以提供搜索服务。在一个或多个实施例中,企业管理工具可以利用搜索构架300作为信息搜索引擎。

在一个或多个实施例中,利用在VM套件级的搜索架构600可以产生提供例如文件/服务/程序位置(例如,VM、目录)的信息的搜索结果。在一个或多个实施例中,搜索结果可以直接链接到适当的VM和/或目录。在一个或多个实施例中,搜索结果可以包括来自联机VM 602(即,接通的VM)和/或脱机VM 604(即,断开的VM)的结果。在一个或多个实施例中,搜索结果可以指明相关数据/文件是否与联机VM 602和/或脱机VM 604相关联。在一个或多个实施例中,在联机VM 602/脱机VM 604上执行的相关OS也可以在搜索结果中指明。再者,在一个或多个实施例中,除了相关的搜索结果以外,还可以提供将脱机VM 604接通和/或将联机VM 602断开的选项。

图8示出根据一个或多个实施例的VM代理512构架。在一个或多个实施例中,VM代理512构架包括索引控制器802,其配置为控制搜索引擎适配器804、文件系统(FS)监控器806、日志管理器808、和VM图像代理服务器810之间的通信。在一个或多个实施例中,搜索引擎适配器804可以配置为管理第三方搜索引擎816,和向索引控制器802提供统一接口。在一个或多个实施例中,日志管理器808可以配置为记录日志信息,和向索引控制器802提供关于系统完整性的信息。在一个或多个实施例中,第三方搜索引擎816可以是由第三方(例如,的LuceneTM)提供的一组与搜索相关的API。

在一个或多个实施例中,当在文件系统614中的一些文件或目录变化时,FS监控器806可以通知索引控制器802采取必要行动。在一个或多个实施例中,VM图像代理服务器810可以配置为从索引控制器802接收必要命令,并且将索引信息传送到搜索构架300(或搜索主机代理642)。在一个或多个实施例中,配置管理器812可以配置索引属性,配置应用814可以被最终用户使用来配置文件/目录属性。

图9示出根据一个或多个实施例的详细说明VM和搜索构架300(或搜索主机代理642)之间的交互的流程图。在一个或多个实施例中,操作902可以包括搜索构架300(或搜索主机代理642)发送连接请求到VM。在一个或多个实施例中,搜索构架300(或搜索主机代理642)可以接收来自VM的回答。在一个或多个实施例中,操作904可以包括搜索构架300(或搜索主机代理642)来查询是否有任何待传送的文件。在一个或多个实施例中,如果没有待传送的文件,搜索构架300(或搜索主机代理642)可以接收来自VM的回答,即,没有传送,并且终止连接。

在一个或多个实施例中,如果有文件要传送,VM会发送合适的回答给搜索构架300(或搜索主机代理642)。同时,在一个或多个实施例中,VM可以传送所述操作(例如,增加、修改、删除)种类和索引文件元信息。在一个或多个实施例中,在操作906中,接着VM会传送索引文件到搜索构架300(或搜索主机代理642)。在一个或多个实施例中,VM也可以传送消息到搜索构架300(或搜索主机代理642),来指明不再有传送,所述消息可以由搜索构架300(或搜索主机代理642)随后确认。在一个或多个实施例中,搜索构架300(或搜索主机代理642)接下来可以终止连接。

图10示出根据一个或多个实施例的搜索请求参数1002的表。在一个或多个实施例中,搜索请求参数1002可以包括用于用户认证的会话ID。在一个或多个实施例中,会话ID可以是“字符串”(即,字符序列)类型1004。在一个或多个实施例中,查询,即用于搜索目的的一组关键字也可以是“字符串”类型1004。在一个或多个实施例中,想要的结果的开始索引(表示为“start”)可以是“整数”类型1004。在一个或多个实施例中,每个查询想要的结果数(表示为“maxResults”)可以是“整数”类型1004。在一个或多个实施例中,例如文件/服务/应用(表示为“type”)的搜索目标的类型可以是“整数”类型1004。在一个或多个实施例中,指明在哪里搜索(表示为“location”)的范围可以是“字符串”类型1004。

图11示出根据一个或多个实施例的结果结构参数1102的表。在一个或多个实施例中,结果结构参数1102可以包括对于查询的存在的总结果数(表示为“totalResultsCount”),其是“整数”类型1104。在一个或多个实施例中,搜索结果的实际列表(表示为“resultElements”)可以是项目的数组。因此,在一个或多个实施例中,“resultElements”可以是“数组”类型1104。在一个或多个实施例中,在前述项数组中的第一搜索结果的索引(表示为“startIndex”)可以是“整数”类型1104。在一个或多个实施例中,在项数组中的最后搜索结果的索引(表示为“endIndex”)也可以是“整数”类型1104。

图12示出根据一个或多个实施例的结果条目结构参数1202的表。在一个或多个实施例中,特定结果要素的名称(例如,包括文件、服务和应用的所支持的任何结果类型的名称)在图12中指明为“name”。在一个或多个实施例中,“name”可以是“字符串”类型1204。在一个或多个实施例中,例如文件、服务和应用的搜索目标的类型(表示为“type”)可以是“整数”类型1204。在一个或多个实施例中,结果的位置(示出为“path”)可以是“字符串”类型1204。在一个或多个实施例中,示出了从在匹配文件中其出现时的上下文中查询的结果摘录的文字(表示为“snippet”)可以是“字符串”类型1204。在一个或多个实施例中,最后修改时间(表示为“lastModifiedTime”)可以是“日期时间”类型1204。

图13示出根据一个或多个实施例的可扩展查询语法和示例的表。在一个或多个实施例中,该表包括查询功能1302和用作查询功能1302的示例的示例查询1304。在一个或多个实施例中,为了搜索包含作为关键字的所有词语,而不管词语的次序,可以使用“缺省搜索”。在一个或多个实施例中,词语次序可能影响搜索结果。例如,当在“缺省搜索”中词A和词B被包含为搜索词(示出为AB)时,搜索结果可以包括词A和词B。在一个或多个实施例中,为了在搜索中包含一个词,可以使用“包含搜索”。例如,当词A和词B在“包含搜索”中被用作A+B时,词B总是被包含在与词A相关联的搜索结果中。虽然这看起来可能类似于“缺省搜索”,但是“包含搜索”可以使可能被“缺省搜索”忽略的连接词(例如,一个(a),一个(an),那个(the),的(of),或,和)被搜索。例如,如果词“服务器”和词“工作站”在“包含搜索”中被用作服务器+该工作站(the workstation),则搜索结果可以包括“该工作站”,以及出现的“服务器”。

在一个或多个实施例中,为了从搜索中排除词,可以使用“排除搜索”。例如,当在“排除搜索”中词A和词B用作A-B时,搜索结果包括排除了B后所有出现的A。在一个或多个实施例中,为了搜索完整的短语,可以使用“短语搜索”。例如,当词“主机”和“服务器”在“短语搜索中”用作“主机服务器”时,整个短语“主机服务器”可以被搜索。在一个或多个实施例中,为了包括词A或词B,可以使用“布尔OR搜索”。例如,在“布尔OR搜索”中词A和词B被用作A OR B时,搜索结果包括词A或词B。在一个或多个实施例中,为了将查询限制于某个位置,可以使用“位置限定”。例如,“位置限定”可以使用位置:[DataCenter][Host Server][VM]的格式,其中DataCenter,Host Server,和VM仅仅出于说明目的而示出。

在一个或多个实施例中,为了单独在主体文字中搜索,而忽略题目的匹配,可以使用“内容搜索”。例如,“内容搜索”可以使用内容:云OS的格式,云OS仅仅出于说明目的而示出。在一个或多个实施例中,为了单独在题目中搜索,而忽略内容的匹配,可以使用“题目搜索”。例如,“题目搜索”可以使用题目:云OS的格式,同样云OS仅仅出于说明目的而示出。显而易见的是可以使用其它搜索参数,并且上述参数可以以逻辑形式组合(例如,组合逻辑运算符)来影响搜索,并且这样的修改在示例性实施例的范围内。

在一个或多个实施例中,搜索构架300(或搜索主机代理642)可以允许对VM数据进行索引,其省去了将脱机VM(504,604)接通以搜索VM内部的数据的需要。同样,在一个或多个实施例中,搜索构架300(或搜索主机代理642)可以允许在云计算环境中搜索更多数据。在一个或多个实施例中,搜索功能可被扩展到数据中心内的元数据和/或VE客户端402中的元数据,其可以由商品目录数据库提供。在一个或多个实施例中,可以对元数据提供更多“智能”,以便使搜索引擎为VE的用户产生更多相关的搜索结果。在一个或多个实施例中,由于上述搜索架构,在VE中可以不隔离VM。在一个或多个实施例中,索引可以通过与搜索构架300通信而更新,而不需要进行网络通信。

图14示出根据一个或多个实施例的、详细说明在虚拟化环境中的综合搜索方法中包括的操作的流程图。在一个或多个实施例中,操作1402可以包括通过虚拟化环境中的搜索架构,对虚拟化环境中的一个或多个主机服务器上的联机VM、脱机VM、虚拟应用和/或其快照中的数据和/或元数据进行索引。在一个或多个实施例中,联机VM是接通的VM,脱机VM是断开的VM。

在一个或多个实施例中,操作1404可以包括维护联机VM、脱机VM、虚拟应用和/或其快照中经索引的数据和/或元数据的数据库,以通过搜索架构对于搜索查询产生综合搜索结果。在一个或多个实施例中,数据库可以与搜索架构相关联。

图15示出根据一个或多个实施例的、详细说明在虚拟化环境中的、更新索引数据库以启动相关和动态搜索的方法中包括的操作的流程图。在一个或多个实施例中,操作1502可以包括通过虚拟化环境中的搜索架构,对虚拟化环境中的一个或多个主机服务器上的联机VM、脱机VM、虚拟应用和/或其快照中的数据和/或元数据进行索引。在一个或多个实施例中,联机VM是接通的VM,脱机VM是断开的VM。

在一个或多个实施例中,操作1504可以包括通过虚拟化环境中的搜索架构,基于其中的状态变化,更新联机VM、脱机VM、虚拟应用和/或其快照中经索引的数据和/或元数据,以通过搜索架构对于搜索查询产生相关的和动态的搜索结果。

虽然已经参考具体示例性实施例描述了本发明,但是很明显的是,在不脱离各个实施例的广泛精神和范围的情况下,可以对这些实施例进行各种修改和变化。例如,本文描述的各个装置和模块可以使用硬件电路(例如,基于CMOS的逻辑电路)、固件、软件或硬件、固件和软件(例如,包含在机器可读介质中)的任何结合来启动和操作。

另外,应该理解本文公开的各种操作、过程和方法可以包含在与数据处理系统(例如,计算机设备)可兼容的机器可读介质中和/或机器可访问介质中,并且可以任何次序执行(例如,包括使用用于实现各种操作的装置)。因此,说明书和附图应当被视为是说明性的而不是限制性的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号