虚拟计算环境中资源视图信息处理的方法及系统转让专利

申请号 : CN201010592146.1

文献号 : CN102043844B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 怀进鹏沃天宇周德辉钟亮

申请人 : 北京航空航天大学

摘要 :

本发明涉及一种虚拟计算环境中资源视图信息处理的方法及系统,其中,方法包括:视图管理模块根据视图描述数据库中存储的视图描述信息,生成视图维护信息,视图描述信息为与用户需求信息匹配的信息;视图处理模块应用视图维护原语对视图维护信息进行编译执行处理,并存储处理结果数据。系统包括:视图管理模块和视图处理模块,视图管理模块用于根据视图描述数据库中存储的视图描述信息,生成视图维护信息,视图描述信息为与用户需求信息匹配的信息;视图处理模块用于应用视图维护原语对视图维护信息进行处理,并存储处理结果数据。本发明虚拟计算环境中资源视图信息处理的方法及系统易于扩展和维护,可适用于多样的资源信息服务。

权利要求 :

1.一种虚拟计算环境中资源视图信息处理的方法,其特征在于,包括:视图管理模块根据视图描述数据库中存储的视图描述信息,生成视图维护信息,所述视图描述信息为与用户需求信息匹配的信息;

视图处理模块应用视图维护原语对所述视图维护信息进行编译执行处理,并存储处理结果数据;

所述视图管理模块根据视图描述数据库中存储的视图描述信息,生成视图维护信息,具体包括:视图管理模块查询所述视图描述数据库,获取所述视图描述信息,根据获取的所述视图描述信息生成视图维护信息;

所述生成视图维护信息之后,还包括:

视图管理模块将所述视图维护信息发送到作业调度模块;

所述作业调度模块将所述视图维护信息发送给所述视图处理模块中的计算节点;

所述作业调度模块将所述视图维护信息发送给所述视图处理模块中的计算节点,具体包括:所述作业调度模块从视图管理模块发送的视图维护信息中选择第一视图维护信息,根据调度策略,从视图处理模块的计算节点中选择第一计算节点,将所述第一视图维护信息发送给所述第一计算节点,并向所述视图管理模块反馈任务分配信息,所述任务分配信息包括第一计算节点信息;

所述视图处理模块应用视图维护原语对所述视图维护信息进行编译执行处理,并存储处理结果数据,具体包括:所述第一计算节点的作业管理单元将所述第一视图维护信息发送给所述第一计算节点的视图编译单元;

所述视图编译单元根据视图维护原语将所述第一视图维护信息编译成可执行的视图维护原语组,并将所述视图维护原语组发送给所述作业管理单元;

所述作业管理单元依照拓扑顺序依次选择所述视图维护原语组中的原语语句,创建该原语语句的原语执行结构,并绑定该原语语句执行时所需的输入数据,所述输入数据包括已执行原语语句的执行结果数据和存储于分布式键值数据库中的资源基础信息;

所述作业管理单元将所述原语执行结构发送给所述第一计算节点的原语执行单元;

所述原语执行单元与所述第一计算节点的求值单元交互,获取所述视图维护原语组中每条原语的执行结果数据;

所述原语执行单元将所述执行结果数据发送给所述作业管理单元;

当所述视图维护原语组的全部原语执行结束时,所述作业管理单元通过所述第一计算节点的分布式数据存储单元将执行结果数据存储到分布式键值数据库。

2.根据权利要求1所述的方法,其特征在于,所述视图编译单元根据视图维护原语将所述第一视图维护信息编译成可执行的视图维护原语组,具体包括:所述视图编译单元根据所述第一视图维护信息中数据操作的依赖关系确定数据操作顺序,根据视图维护原语将所述数据操作顺序转化为可执行的视图维护原语组。

3.根据权利要求1所述的方法,其特征在于,所述原语执行单元与所述第一计算节点的求值单元交互,获取所述视图维护原语组中每条原语的执行结果数据,具体包括:所述原语执行单元判断每条原语的操作符类型,若是数据操作运算符,则应用数据集运算符处理并存储处理结果;若是数据存取运算符,则生成统一的数据源,再依据所述数据源的描述,生成键值对结构的数据集合并存储到所述分布式键值数据库中;若是统计运算符,则应用统计运算符处理并生成统计数据构成的数据集。

4.根据权利要求1所述的方法,其特征在于,所述绑定该原语语句执行时所需的输入数据之前,还包括:数据收集模块向所述视图处理模块中的第二计算节点发送收集到的资源基础信息;

所述第二计算节点的分布式数据存储单元将所述资源基础信息发送给分布式键值数据库。

5.根据权利要求1~4中任一项所述的方法,其特征在于,所述视图管理模块根据视图描述数据库中存储的视图描述信息,生成视图维护信息之前,还包括:视图管理模块应用资源视图描述语言,生成与用户需求信息匹配的视图描述信息。

6.一种虚拟计算环境中资源视图信息处理的系统,其特征在于,包括:视图管理模块,用于根据视图描述数据库中存储的视图描述信息,生成视图维护信息,所述视图描述信息为与用户需求信息匹配的信息;

视图处理模块,用于应用视图维护原语对所述视图维护信息进行编译执行处理,并存储处理结果数据;

作业调度模块,用于接收所述视图管理模块生成的所述视图维护信息,并从所述视图维护信息中选择第一视图维护信息,将所述第一视图维护信息发送给所述视图处理模块中的第一计算节点,还将所述第一计算节点信息反馈给所述视图管理模块;

数据收集模块,用于将收集到的资源基础信息发送给所述视图处理模块;

分布式键值数据库,用于存储所述数据收集模块收集的资源基础信息,还用于存储所述视图处理模块编译并执行后的处理结果数据;

所述视图处理模块具体用于由所述作业调度模块选择的第一计算节点接收所述作业调度模块发送的所述第一视图维护信息,所述第一计算节点与所述分布式键值数据库交互,编译并执行所述视图维护信息,并将所述视图维护信息的处理结果数据存储于所述分布式键值数据库中;还用于接收所述数据收集模块发送的所述资源基础信息,并将所述资源基础信息发送给所述分布式键值数据库;

所述第一计算节点具体包括:

作业管理单元,用于所述第一计算节点将所述第一视图维护信息发送给所述第一计算节点的视图编译单元;

视图编译单元,用于根据视图维护原语将所述第一视图维护信息编译成可执行的视图维护原语组,并将所述视图维护原语组发送给作业管理单元;

所述作业管理单元,用于依照拓扑顺序依次选择所述视图维护原语组中的原语语句,创建该原语语句的原语执行结构,并绑定该原语语句执行时所需的输入数据,所述输入数据包括已执行原语语句的执行结果数据和存储于分布式键值数据库中的资源基础信息;

所述作业管理单元,还用于将所述原语执行结构发送给所述第一计算节点的原语执行单元;

所述原语执行单元,用于与所述第一计算节点的求值单元交互,获取所述视图维护原语组中每条原语的执行结果数据,将所述执行结果数据发送给所述作业管理单元;

所述作业管理单元,还用于当所述视图维护原语组的全部原语执行结束时,通过所述第一计算节点的分布式数据存储单元将执行结果数据存储到分布式键值数据库。

说明书 :

虚拟计算环境中资源视图信息处理的方法及系统

技术领域

[0001] 本发明涉及计算机资源视图技术,尤其涉及一种虚拟计算环境中资源视图信息处理的方法及系统。

背景技术

[0002] 资源信息服务是为其他服务提供计算资源、服务资源的配置信息和性能参数的基础服务。在资源信息服务中,资源视图是构建于资源基础描述数据之上用于反映资源之间关系的虚拟数据表,它使得用户可以根据应用的需求从不同的视角获取资源的信息,资源视图的信息处理是资源信息服务的核心。
[0003] 现有技术中,资源视图的信息处理都是集成在计算机系统的结构之中,这种定制好的资源视图信息处理能够完成资源信息的监控及简单的查询服务。
[0004] 但是,资源信息呈动态多样变化,而且用户有不同的使用需求,而现有的资源视图信息处理的方法及系统是已经定制好的,难以进一步扩展和维护管理,从而不能适用于多样的资源信息服务。

发明内容

[0005] 本发明的目的是提供一种虚拟计算环境中资源视图信息处理的方法及系统,用以解决现有技术中资源视图信息处理不易于扩展和维护,不能适用于多样的资源信息服务的问题。
[0006] 为实现上述目的,本发明提供了一种虚拟计算环境中资源视图信息处理的方法,包括:视图管理模块根据视图描述数据库中存储的视图描述信息,生成视图维护信息,所述视图描述信息为与用户需求信息匹配的信息;视图处理模块应用视图维护原语对所述视图维护信息进行编译执行处理,并存储处理结果数据;
[0007] 所述视图管理模块根据视图描述数据库中存储的视图描述信息,生成视图维护信息,具体包括:
[0008] 视图管理模块查询所述视图描述数据库,获取所述视图描述信息,根据获取的所述视图描述信息生成视图维护信息;
[0009] 所述生成视图维护信息之后,还包括:
[0010] 视图管理模块将所述视图维护信息发送到作业调度模块;
[0011] 所述作业调度模块将所述视图维护信息发送给所述视图处理模块中的计算节点;
[0012] 所述作业调度模块将所述视图维护信息发送给所述视图处理模块中的计算节点,具体包括:
[0013] 所述作业调度模块从视图管理模块发送的视图维护信息中选择第一视图维护信息,根据调度策略,从视图处理模块的计算节点中选择第一计算节 点,将所述第一视图维护信息发送给所述第一计算节点,并向所述视图管理模块反馈任务分配信息,所述任务分配信息包括第一计算节点信息;
[0014] 所述视图处理模块应用视图维护原语对所述视图维护信息进行编译执行处理,并存储处理结果数据,具体包括:
[0015] 所述第一计算节点的作业管理单元将所述第一视图维护信息发送给所述第一计算节点的视图编译单元;
[0016] 所述视图编译单元根据视图维护原语将所述第一视图维护信息编译成可执行的视图维护原语组,并将所述视图维护原语组发送给所述作业管理单元;
[0017] 所述作业管理单元依照拓扑顺序依次选择所述视图维护原语组中的原语语句,创建该原语语句的原语执行结构,并绑定该原语语句执行时所需的输入数据,所述输入数据包括已执行原语语句的执行结果数据和存储于分布式键值数据库中的资源基础信息; [0018] 所述作业管理单元将所述原语执行结构发送给所述第一计算节点的原语执行单元;
[0019] 所述原语执行单元与所述第一计算节点的求值单元交互,获取所述视图维护原语组中每条原语的执行结果数据;
[0020] 所述原语执行单元将所述执行结果数据发送给所述作业管理单元; [0021] 当所述视图维护原语组的全部原语执行结束时,所述作业管理单元通过所述第一计算节点的分布式数据存储单元将执行结果数据存储到分布式键值数据库。 [0022] 为实现上述目的,本发明还提供了一种虚拟计算环境中资源视图信息处理的系统,包括:视图管理模块和视图处理模块,其中视图管理模块用于根据视图描述数据库中存储的视图描述信息,生成视图维护信息,所述视图描述信息为与用户需求信息匹配的信息;视图处理模块用于应用视图维护原语对所述视图维护信息进行编译执行处理,并存储处理结果数据;
[0023] 作业调度模块,用于接收所述视图管理模块生成的所述视图维护信息,并从所述视图维护信息中选择第一视图维护信息,将所述第一视图维护信息发送给所述视图处理模块中的第一计算节点,还将所述第一计算节点信息反馈给所述视图管理模块; [0024] 数据收集模块,用于将收集到的资源基础信息发送给所述视图处理模块; [0025] 分布式键值数据库,用于存储所述数据收集模块收集的资源基础信息,还用于存储所述视图处理模块编译并执行后的处理结果数据;
[0026] 所述视图处理模块具体用于由所述作业调度模块选择的第一计算节点接收所述作业调度模块发送的所述第一视图维护信息,所述第一计算节点与所述分布式键值数据库交互,编译并执行所述视图维护信息,并将所述视图维护信息的处理结果数据存储于所述分布式键值数据库中;还用于接收所述数据收集模块发送的所述资源基础信息,并将所述资源基础信息发送给所述分布式键值数据库;
[0027] 所述第一计算节点具体包括:
[0028] 作业管理单元,用于所述第一计算节点将所述第一视图维护信息发送给所述第一计算节点的视图编译单元;
[0029] 视图编译单元,用于根据视图维护原语将所述第一视图维护信息编译成可执行的视图维护原语组,并将所述视图维护原语组发送给作业管理单元;
[0030] 所述作业管理单元,用于依照拓扑顺序依次选择所述视图维护原语组中的原语语句,创建该原语语句的原语执行结构,并绑定该原语语句执行时所需的输入数据,所述输入数据包括已执行原语语句的执行结果数据和存储于分布式键值数据库中的资源基础信息;
[0031] 所述作业管理单元,还用于将所述原语执行结构发送给所述第一计算节点的原语执行单元;
[0032] 所述原语执行单元,用于与所述第一计算节点的求值单元交互,获取所述视图维护原语组中每条原语的执行结果数据,将所述执行结果数据发送给所述作业管理单元; [0033] 所述作业管理单元,还用于当所述视图维护原语组的全部原语执行结束时,通过所述第一计算节点的分布式数据存储单元将执行结果数据存储到分布式键值数据库。 [0034] 由上述技术方案可知,本发明通过视图管理模块将与用户需求信息匹配的视图描述信息生成视图维护信息,使得虚拟计算环境中资源视图信息处理能够根据用户需求进行多样的扩展和维护;通过视图处理模块应用视图维护原语对视图维护信息进行编译执行处理获取并存储处理结果数据,使得用户对虚拟计算环境中资源视图信息处理的扩展和维护得以执行完成,以满足多样的资源视图查询。
[0035] 附图说明
[0036] 图1为本发明虚拟计算环境中资源视图信息处理的方法实施例一的流程图。 [0037] 图2为本发明虚拟计算环境中资源视图信息处理的方法实施例二的流程图。 [0038] 图3为本发明虚拟计算环境中资源视图信息处理的方法实施例三中视图处理模块对视图维护信息的处理的流程图。
[0039] 图4为图3所示实施例三中视图维护信息处理的信令流程图。
[0040] 图5为本发明虚拟计算环境中资源视图信息处理的系统实施例一的结构示意图。 [0041] 图6为本发明虚拟计算环境中资源视图信息处理的系统实施例二的结构 示意图。
[0042] 主要元件符号说明:
[0043] 1-视图管理模块; 2-视图处理模块;
[0044] 3-作业调度模块; 4-分布式键值数据库;
[0045] 5-数据收集模块; 6-HTTP服务器;
[0046] 21-计算节点; 211-作业管理单元;
[0047] 212-视图编译单元;213-原语执行单元;
[0048] 214-求值单元; 215-分布式数据存储单元。

具体实施方式

[0049] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 [0050] 图1为本发明虚拟计算环境中资源视图信息处理的方法实施例一的流程图,如图1所示,本实施例的方法包括:
[0051] 步骤101、视图管理模块根据视图描述数据库中存储的视图描述信息,生成视图维护信息,所述视图描述信息为与用户需求信息匹配的信息。
[0052] 现有技术中,无论是集中式资源信息管理方法还是分布式资源信息服务方法,资源视图信息处理都是定制好的集成在系统信息服务系统中,资源信息的处理与系统内部的存储结构有很强的关联性,资源视图的信息处理过程对用户来说是不透明的,因此用户难以根据需求进行扩展和维护。
[0053] 而本步骤中,视图管理模块能够根据与用户需求信息匹配的视图描述信息生成视图维护信息,通过下面的进一步处理可以完成相应的需求信息处理,因此本实施例的虚拟计算环境中资源视图信息处理的方法可以根据用户的需 求进行扩展和维护。 [0054] 步骤102、视图处理模块应用视图维护原语对所述视图维护信息进行编译执行处理,并存储处理结果数据。
[0055] 本步骤中,通过应用视图维护原语对相应的视图维护信息进行编译和执行视图处理模块能够对多样的视图维护信息进行处理,并将处理结果数据存储以备查询时使用,满足不同的查询需求。
[0056] 本实施例的方法将资源视图信息处理独立出来,其资源视图的信息描述及维护处理对用户是透明的,因此用户可以很容易根据需求扩展资源视图信息服务的范围。具体来说,用户将各种需求信息描述存储在视图描述数据库中,视图管理模块将从视图描述数据库中选出视图描述信息生成视图维护信息,并将该视图维护信息发送给视图处理模块,视图处理模块依据视图维护原语的定义将视图维护信息转化成可处理执行的视图维护原语语句,然后执行这些原语语句获取视图维护信息的处理结果数据,并将该处理结果数据存储用于后续资源视图数据查询。
[0057] 本实施例通过视图管理模块将与用户需求信息匹配的视图描述信息生成视图维护信息,使得虚拟计算环境中资源视图信息处理能够根据用户需求进行多样的扩展和维护;通过视图处理模块应用视图维护原语对视图维护信息进行编译执行处理获取并存储处理结果数据,使得用户对虚拟计算环境中资源视图信息处理的扩展和维护得以执行完成,以满足多样的资源视图查询。
[0058] 本发明虚拟计算环境中资源视图信息处理的方法实施例二在上述实施例一的基础上,进一步地,步骤101中视图管理模块生成视图维护信息之后,视图维护信息由作业调度模块发送到选择的视图处理模块中的计算节点,由该计算节点进行相应的编译执行处理。下面采用具体实施例详细说明。
[0059] 图2为本发明虚拟计算环境中资源视图信息处理的方法实施例二的流 程图,如图2所示,本实施例的方法包括:
[0060] 步骤201、视图管理模块查询所述视图描述数据库,获取所述视图描述信息,根据获取的所述视图描述信息生成视图维护信息。
[0061] 步骤202、视图管理模块将所述视图维护信息发送到作业调度模块。 [0062] 在上述步骤201和步骤202中,视图管理模块从视图描述数据库中查询获取视图描述信息以及生成视图维护信息,生成视图维护信息后发送给作业调度模块,视图管理模块可以选择定时查询视图描述数据库中满足时间间隔条件的视图描述信息,若视图数据库中存在满足该时间间隔的视图描述信息,就将其生成视图维护信息,并将生成的视图维护信息向作业调度模块发送。
[0063] 步骤203、所述作业调度模块从视图管理模块发送的视图维护信息中选择第一视图维护信息,根据调度策略,从视图处理模块的计算节点中选择第一计算节点,将所述第一视图维护信息发送给所述第一计算节点,并向所述视图管理模块反馈任务分配信息,所述任务分配信息包括第一计算节点信息。
[0064] 本步骤中,作业调度模块从其接收的视图维护任务中选择待处理的第一视图维护信息并锁定,依据预先设定的调度策略,如发送预约信息等方式从视图处理模块的多个计算节点中选择出第一计算节点,将选择并锁定的第一视图维护信息发送至该第一计算节点,由该第一计算节点进行后续处理工作,作业调度模块还将该次视图维护信息的分配情况,如该第一计算节点的信息,反馈给视图管理模块,以便于视图管理模块记录相应视图维护信息的处理情况。
[0065] 步骤204、视图处理模块中的第一计算节点应用视图维护原语对所述视图维护信息进行编译执行处理,并存储处理结果数据。
[0066] 本实施例通过视图管理模块将生成的视图维护信息发送给作业调度模块,由作业调度模块将每个视图维护信息具体分配给选择的计算节点进行处理,有利于提高视图管理模块处理用户需求信息的效率。
[0067] 本发明虚拟计算环境中资源视图信息处理的方法实施例三在上述实施 例二的基础上,进一步地,步骤204中视图处理模块中的第一计算节点对视图维护信息进行的编译执行处理可以为将视图维护信息转化成可执行的视图维护原语组语句的处理。下面采用具体实施例详细说明。
[0068] 图3为本发明虚拟计算环境中资源视图信息处理的方法实施例三中视图处理模块对视图维护信息的处理的流程图,图4为图3所示实施例三中视图维护信息处理的信令流程图,如图3和图4所示,本实施例中视图处理模块对视图维护信息的处理包括: [0069] 步骤301、第一计算节点的作业管理单元将所述第一视图维护信息发送给所述第一计算节点的视图编译单元。
[0070] 步骤302、所述视图编译单元根据视图维护原语将所述第一视图维护信息编译成可执行的视图维护原语组,并将所述视图维护原语组发送给所述作业管理单元。 [0071] 本步骤中,视图编译单元可以根据所述第一视图维护信息中数据操作的依赖关系确定数据操作顺序,根据视图维护原语语法关系将所述数据操作顺序转化为可执行的视图维护原语组。该视图维护原语组可以为具有操作顺序的有向无环图结构,每次转化结束时,对该图进行检查确定没有孤立的点或环,在转化为有向无环图(directed acyclic graph,简称:DAG)结构的过程中,对视图描述中与操作算子对应的表达式进行递归降解,分析表达式之间的依赖关系,使得同一数据集中相同的表达式在后续的执行时只需求值一次,缓存该求值结果以减少计算。
[0072] 步骤303、所述作业管理单元依照拓扑顺序依次选择所述视图维护原语组中的原语语句,创建该原语语句的原语执行结构,并绑定该原语语句执行时所需的输入数据,所述输入数据包括已执行原语语句的执行结果数据和存储于分布式键值数据库中的资源基础信息;
[0073] 本步骤中,作业管理单元依照有向无环图结构的拓扑顺序依次选择各条原语语句,对每条原语语句创建相应的原语执行结构,并绑定该原语语句执 行时所需的输入数据,该输入数据可以包括该视图维护原语组中已执行完的原语语句的结果数据和数据收集模块收集到的存储于分布式键值数据库中的资源基础信息数据。具体来说,数据收集模块将收集到资源基础信息发送给视图处理模块中的第二计算节点,该第二计算节点的分布式数据存储单元将该资源基础信息转换为可存储的数据存储操作原语结构发送到分布式键值数据库中,用于视图处理模块执行处理视图维护信息时调用相应的资源基础信息数据。数据收集模块可以通过网络,如HTTP服务器,直接向第二计算节点发送资源基础信息。 [0074] 步骤304、所述作业管理单元将所述原语执行结构发送给所述第一计算节点的原语执行单元。
[0075] 步骤305、所述原语执行单元与所述第一计算节点的求值单元交互,获取所述视图维护原语组中每条原语的执行结果数据。
[0076] 本步骤中,原语执行单元判断每条原语的操作符类型,若是数据操作运算符,则应用数据集运算符,若需要表达式求值,则生成相应的语法树进行求值,并存储处理结果于内存或临时文件中;若是数据存取运算符,则根据数据集的类型和视图属性生成统一的数据源,再依据所述数据源的描述,生成键值对结构的数据集合并存储到所述分布式键值数据库中;若是统计运算符,则应用统计运算符处理,对数据集进行统计操作,输入的数据集是可遍历的,生成统计数据构成的数据集。
[0077] 步骤306、所述原语执行单元将所述执行结果数据发送给所述作业管理单元。 [0078] 步骤307、当所述视图维护原语组的全部原语执行结束时,所述作业管理单元通过所述第一计算节点的分布式数据存储单元将执行结果数据存储到分布式键值数据库。 [0079] 本实施例中,第一计算节点中各个执行单元的交互过程如图4所示。第一计算节点的作业管理单元将第一视图维护信息发送给所述第一计算节点的 视图编译单元,由于该第一视图维护信息由视图编译单元将该视图描述进行编译,编译成可执行的有向无环图结构的视图维护原语组,该视图编译单元将编译后的视图维护原语组返回给作业管理单元,由作业管理单元依照该视图维护原语组的拓扑顺序创建原语执行结构依次发给第一计算节点的原语执行单元,原语执行单元对每条原语进行执行,执行过程中原语执行单元与第一计算节点的求值单元交互获取每条原语的执行结果,并将该执行结果发送给作业管理单元,完成一条原语的执行。本实施例中第一计算节点中可以包括与作业调度模块接口的调度单元,由调度单元接收到视图维护信息后将其转发给该第一计算节点的作业管理单元再进行本实施例的后续操作。当所有原语都执行完后,作业管理单元通过第一计算节点的分布式数据存储单元将执行结果数据存储到分布式键值数据库。
[0080] 本实施例通过第一计算节点的作业管理单元协调分工,使得视图编译单元的编译和原语执行单元的执行得以完成,从而保证将视图维护信息进行及时处理获取处理结果数据。
[0081] 本发明虚拟计算环境中资源视图信息处理的方法实施例四在上述的任一实施例的基础上,视图管理模块根据视图描述数据库中存储的视图描述信息,生成视图维护信息之前,还可以包括:视图管理模块应用资源视图描述语言(Resource Query Language,简称:RQL),生成与用户需求信息匹配的视图描述信息。该资源视图描述语言可以为基于可扩展标记语言(Extensible Markup Language,简称:XML)的结构化描述语言,用于定义视图描述标签、数据集描述标签和操作运算符标签。根据用户需求基于可扩展标记语言定义一视图标签、至少一个数据集标签和多个操作运算符标签。
[0082] 其中,视图标签为VIEW,包含的属性有:
[0083] NAME:视图名称
[0084] DOMAIN:视图所属的资源域
[0085] SCHED:维护视图的时间间隔
[0086] 数据集描述标签为DATASET,包含的属性有:
[0087] NAME:数据集名称
[0088] TYPE:数据类型,包括视图数据,基础资源信息数据
[0089] LOAD:加载方法描述
[0090] SINK:存储方法描述
[0091] ARGS:加载和存储所用的参数
[0092] 操作运算符标签为OPERATOR,包含的属性有:
[0093] NAME:运算符的名称
[0094] TYPE:运算符的类型,包括聚合,统计,索引三类
[0095] INPUT:所有输入数据集的名称,之间用逗号分开
[0096] ARGS:运算符的参数
[0097] OUPUT:输出数据集的名称
[0098] 与上述结构化描述语言定义视图描述标签、数据集描述标签和操作运算符标签相对应,视图处理模块应用的视图维护原语定义有数据集类型和数据运算符以进行编译执行时对视图维护信息进行处理操作。其中数据集类型包括:
[0099] Record:对单个资源基础数据的描述,包含了该资源的属性和性能信息; [0100] Collection:同样类型的数据的列表,是对数据集的抽象,可以对其进行遍历操作和统计操作;
[0101] OrderedCollection:按照有序排列的列表,是通过对Collection进行Orderby操作得到的数据,如果Collection内的数据是Record,那么Orderby的表达式可以是由常量及Record内的变量组成求值表达式;
[0102] DataBag:对于某一键可以包含多个数据值的数据集结构,是由Groupby或者是EqualJoin运算符对Collection进行操作而得到。
[0103] 数据运算符包括:数据存取运算符,数据集操作运算符和统计运算符。其中: [0104] 数据存取运算符包括SINK和LOAD两个操作,SINK是将数据集存储到分布式键值数据库中的操作的描述,LOAD是将分布式键值数据库中的资源基础数据和资源视图数据加载到计算节点的分布式数据存储单元的操作;
[0105] 数据集运算符包括Groupby,Orderby,Filter,Projector,EqualJoin五个运算符,这些运算符可以作用于Record,Collection,OrderedCollection,DataBag四类数据集合,这些操作除了EqualJoin之外都是只对一个数据集进行操作,EqualJoin包含至少两个以上的数据集,并且EqualJoin的计算表达式对每一个数据集内的元素有效; [0106] 统计运算符是针对同类数据进行的统计计算,只对数值型数据有效,统计运算符有MIN,MAX,SUM,COUNT,AVG五个运算符,分别是对表达式进行取最小值,取最大值,求和,计数,求平均数五个操作。
[0107] 上述数据集和运算符的结合为视图维护原语,表1为数据集类型和对应的运算符操作之间的对应关系的列表,表1中的“√”表示对应的数据集类型有相应的操作。 [0108] 表1
[0109]Record Collection Ordered Data Bag
LOAD √ √
SINK √ √ √ √
GROUPBY √ √
ORDERBY √ √ √
FILTER √ √
RANGEOF √
PROJECTOR √ √ √ √
EQUALJOIN √ √ √
STATFUNC √ √ √
[0110] [0083] 本实施例应用上述资源视图描述语言和视图维护原语可以实现用户不同需求服务信息的描述和处理,通过处理过程中数据存取被转化为键值结构的操作,与分布式键值数据库进行交互,获取处理结果数据。
[0111] 图5为本发明虚拟计算环境中资源视图信息处理的系统实施例一的结构示意图,如图5所示,本实施例的系统包括:视图管理模块1和视图处理模块2,视图管理模块1用于根据视图描述数据库中存储的视图描述信息,生成视图维护信息,所述视图描述信息为与用户需求信息匹配的信息;视图处理模块2用于应用视图维护原语对所述视图维护信息进行处理,并存储处理结果数据。
[0112] 本实施例可用于执行上述方法实施例一的技术方案,其实现原理及能达到的技术效果与方法实施例一类似,在此不再赘述。
[0113] 图6为本发明虚拟计算环境中资源视图信息处理的系统实施例二的结构示意图,如图6所示,本实施例的系统包括:视图管理模块1、视图处理模块2、作业调度模块3、分布式键值数据库4和数据收集模块5,其中视图处理模块2包括多个计算节点21,当有视图维护信息待处理时,作业调度模块3从这些计算节点中选出一个作为第一计算节点用于执行后续工作,当数据收集模块5收集到数据时通过HTTP服务器6从这些计算节点中选择一个作为第二计算节点用于执行后续工作。作业调度模块3用于接收所述视图管理模块1生成的所述视图维护信息,并从所述视图维护信息中选择第一视图维护信息,将所述第一视图维护信息发送给视图处理模块2中的第一计算节点,还将所述第一计算节点信息反馈给视图管理模块1。数据收集模块5用于将收集到的资源基础信息发送给视图处理模块2中的第二计算节点,该第二计算节点将该资源基础信息通过分布式数据存储单元215发送给分布式键值数据库4以用于视图维护原语执行过程中调用相应的资源基础信息数据。分布式键值数据库4用于存储数据收集模块5收集的资源基础信息,还用于存储所述视图处理模块2编译并执行后的处理结果数据。视图处理模块2中 的每个计算节点21包括作业管理单元211、视图编译单元212、原语执行单元213、求值单元214和分布式数据存储单元215,具体应用中,由作业调度模块3选择的第一计算节点接收作业调度模块3发送的所述第一视图维护信息,所述第一计算节点与分布式键值数据库4交互,编译并执行所述视图维护信息,并将所述视图维护信息的处理结果数据存储于分布式键值数据库4中。具体来说是第一计算节点中的作业管理单元211将视图维护信息发送给视图编译单元212,视图编译单元212将该资源视图描述语言描述的视图维护信息编译成可执行的具有DAG结构的多条原语组成的视图维护原语组并返回给作业管理单元211,作业管理单元211依据拓扑顺序对每条原语创建原语执行结构并依次发送给原语执行单元213,原语执行单元213与求值单元214交互进行表达式求值,获取求值结果后将其返回给作业管理单元211,完成一条原语的执行,当所有原语执行完后,作业管理单元211通过分布式数据存储单元215将处理结果数据发送给分布式键值数据库4以备用户资源视图查询时使用。本实施例中每个计算节点21中可以包括与作业调度模块3接口的调度单元(图中未示出),调度单元接收到视图维护信息后将其转发给相应计算节点的作业管理单元211以便于作业管理单元211仅协调处理计算节点内部各单元的工作。
[0114] 本实施例的系统可用于执行上述方法实施例二至实施例四任一实施例的技术方案,其实现原理及能达到的技术效果与方法实施例类似,在此不再赘述。 [0115] 本发明的上述方法及系统任一实施例均可适用于基于虚拟机的虚拟计算环境中资源视图信息处理。
[0116] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁盘或者光盘等各种可以存储程序代码的介 质。
[0117] 最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。