集群作业调度的账单生成系统及方法

文档序号:6575462阅读:195来源:国知局
专利名称:集群作业调度的账单生成系统及方法
技术领域
本发明涉及计算机技术高性能领域,特别涉及一种账单生成系统及方法。
背景技术
在高性能集群作业调度系统中,作业调度系统会根据用户的作业请求,自动分配 计算节点供作业使用,而集群的管理者需要准确的掌握用户作业使用机器资源的情况,并 据此向用户收取使用费用。在集群的使用过程中,会产生大量的与集群作业调度相关的数 据,管理者需要对这些数据进行统计分析,得出供记账收费的数据结果。 现有的账单生成系统仅仅对指标数据进行简单的相加,无法为用户使用资源对比 提供可靠的数据支持。并且,现有的账单生成系统仅仅只有数据,而没有提供直观的数据展 示方式。除此之外,管理者只能通过浏览器浏览数据,而不能进行下载。因此,需要一种系 统和方法解决上述问题。

发明内容
针对相关技术中存在的一个或多个问题,本发明的目的在于提供一种集群作业调 度的账单生成系统及方法,以解决上述问题中的至少之一。 为实现上述目的,本发明一方面提供一种集群作业调度的账单生成系统,包括作 业调度监控模块、数据处理模块、数据库、交互模块和记账引擎。其中,作业调度监控模块用 于监视每个作业的运行指标数据,并记录每个作业的运行指标数据和作业对应的对象属性 信息,以及将每个作业的运行指标数据和作业对应的对象属性信息发送至数据处理模块。 数据处理模块用于接收来自作业调度监控模块的每个作业的运行指标数据和作业对应的 对象属性信息,对每个作业的运行指标数据进行处理,并将处理后的数据存储至数据库。数 据库用于存储数据处理模块的数据。交互模块用于接收管理者请求并将管理者请求发送至 记账引擎,以及接收记账引擎返回的账单并呈现给管理者。记账引擎用于接收来自交互模 块的管理者请求,并根据管理者请求从数据库中读取满足管理者请求的数据,以及根据管 理者请求对满足管理者请求的数据分析处理后生成账单,并将账单反馈至交互模块。
优选地,作业调度监控模块包括监视模块、记录模块和发送模块。其中,监视模块 用于监视每个作业的运行指标数据。记录模块用于记录每个作业的运行指标数据和作业对 应的对象属性信息。发送模块用于将每个作业的运行指标数据和作业对应的对象属性信息 发送至数据处理模块。 优选地,数据处理模块包括数据接收模块和处理模块。其中,数据接收模块用于接 收来自作业调度监控模块的每个作业的运行指标数据和作业对应的对象属性信息。处理模 块用于对每个作业的运行指标数据以作业为单位进行处理,以及将每个作业的运行指标数 据按作业对应的对象属性进行分类,并以对象属性为单位进行处理,以及将处理后的数据 存储至数据库。 优选地,交互模块包括表示界面和请求处理模块。其中,表示界面用于接收管理者2/4页
请求,并将记账引擎返回的账单呈现给管理者。请求处理模块用于将管理者请求发送至记 账引擎。 优选地,记账引擎包括接收模块、数据读取模块、账单生成模块和结果反馈模块。 其中,接收模块用于接收来自交互模块的管理者请求。数据读取模块用于根据管理者请求 从数据库中读取满足管理者请求的数据。账单生成模块用于根据管理者请求对满足管理者 请求的数据分析处理后生成账单。结果反馈模块用于将账单生成模块生成的账单反馈给交 互模块。 优选地,账单的格式包括以下至少之一 PDF、XLS和HTML。作业对应的对象属性信 息包括以下至少之一所述作业对应的提交用户、所述作业的所属集群。 本发明另一方面还提出一种集群作业调度的账单生成方法,包括以下步骤作业 调度监控模块监视每个作业的运行指标数据,并记录每个作业的运行指标数据和作业对应 的对象属性信息,然后将每个作业的运行指标数据和作业对应的对象属性信息发送至数据 处理模块。数据处理模块接收来自作业调度监控模块的每个作业的运行指标数据和作业对 应的对象属性信息,对每个作业的运行指标数据进行处理,并将处理后的数据存储至数据 库。交互模块接收管理者请求并将管理者请求发送至记账引擎。记账引擎接收来自交互模 块的管理者请求,并根据管理者请求从数据库中读取满足管理者请求的归一化数据,然后 根据管理者请求对满足管理者请求的数据分析处理后生成账单,并将账单反馈至交互模块 呈现给管理者。 优选地,对每个作业的运行指标数据进行处理,包括对每个作业的运行指标数据 以作业为单位进行处理;以及将每个作业的运行指标数据按作业对应的对象属性进行分 类,并以对象属性为单位进行处理。 借助本发明上述至少一个技术方案,通过对作业运行指标数据进行分析、统计和
归一化等处理后以合理的方式提供给管理者,为收费提供了更可靠可信的依据。 本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变
得明显,或通过本发明的实践了解到。


本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变 得明显和容易理解,其中 图1为根据本发明的集群作业调度的账单生成系统的结构图;以及
图2为根据本发明的集群作业调度的账单生成方法的流程图。
具体实施例方式
考虑到相关技术中存在的一个或多个问题,本发明提供一种集群作业调度的账单 生成系统及方法。下面详细描述本发明的实施例,所述实施例的示例在附图中示出。应理 解,下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发 明的限制。 图1为根据本发明的集群作业调度的账单生成系统的结构图。如图1所示,该系 统包括作业调度监控模块100、数据处理模块200、数据库300、交互模块400和记账引擎500。其中,作业调度监控模块100用于监视每个作业的运行指标数据,并记录每个作业的 运行指标数据和作业对应的对象属性信息,以及将每个作业的运行指标数据和作业对应的 对象属性信息发送至数据处理模块200。数据处理模块200用于接收来自作业调度监控模 块100的每个作业的运行指标数据和作业对应的对象属性信息,对每个作业的运行指标数 据进行处理,并将处理后的数据存储至数据库300。数据库300用于存储数据处理模块200 的数据。交互模块400用于接收管理者请求并将管理者请求发送至记账引擎500,以及接收 记账引擎500返回的账单并呈现给管理者。记账引擎500用于接收来自交互模块400的管 理者请求,并根据管理者请求从数据库300中读取满足管理者请求的数据,以及根据管理 者请求对满足管理者请求的数据分析处理后生成账单,并将账单反馈至交互模块400。
作业调度监控模块100包括监视模块110、记录模块120和发送模块130。其中, 监视模块110用于监视每个作业的运行指标数据。记录模块120用于记录每个作业的运行 指标数据和作业对应的对象属性信息。发送模块130用于将每个作业的运行指标数据和作 业对应的对象属性信息发送至数据处理模块200。其中,作业的运行指标数据包括内存使 用量、CPU占用时间等。作业对应的对象属性信息包括作业对应的提交用户、所述集群等信 息。 数据处理模块200包括数据接收模块210和处理模块220。其中,数据接收模块 210用于接收来自作业调度监控模块100的每个作业的运行指标数据和作业对应的对象属 性信息。处理模块220用于对每个作业的运行指标数据以作业为单位进行处理,以及将每 个作业的运行指标数据按作业对应的对象属性进行分类,并以对象属性为单位进行处理, 以及将处理后的数据存储至数据库300。其中,处理包括分析、归一、统计等。
交互模块400包括表示界面410和请求处理模块420。其中,表示界面410用于接 收管理者请求,并将记账引擎500返回的账单呈现给管理者。请求处理模块420用于将管 理者请求发送至记账引擎500。 记账引擎500包括接收模块510、数据读取模块520、账单生成模块530和结果反 馈模块540。其中,接收模块510用于接收来自交互模块400的管理者请求。数据读取模块 520用于根据管理者请求从数据库300中读取满足管理者请求的数据。账单生成模块530 用于根据管理者请求,对满足管理者请求的数据分析处理后生成账单。结果反馈模块540 用于将账单生成模块生成的账单反馈给交互模块400。其中,账单的格式包括PDF、 XLS和 HTML等。 下面结合附图2详细描述根据本发明的集群作业调度的账单生成方法。如图2所 示,该方法包括以下步骤 步骤S210,作业调度监控模块100监视每个作业的运行指标数据,并记录每个作 业的运行指标数据和作业对应的对象属性信息,然后将每个作业的运行指标数据和作业对 应的对象属性信息发送至数据处理模块200。 每个作业的运行指标数据包括内存使用量、CPU占用时间等。作业对应的对象属 性信息包括作业对应的提交用户、所属集群等信息。以作业为单位记录,做到了较小粒度的 数据统计,可以为后续的数据统计分析提供可靠的数据支持。同时记录了作业对应的对象 属性信息,可以为后续记账提供多角度的数据支持,如可以统计某个用户提交的所有作业 占用的计算资源。
步骤S220,数据处理模块200接收来自作业调度监控模块100的每个作业的运行 指标数据和作业对应的对象属性信息,对每个作业的运行指标数据进行处理,并将数据存 储至数据库300。 由于作业调度监控模块100中记录的数据量会较大,为提高记账功能的性能和效 率,数据处理模块200每天会自动对当天作业运行的数据进行加权统计。为提高数据的可 用性,对数据进行单位归一处理,如作业占用的内存都换算成MB承小时单位,通过归一处 理,很好的使得数据具有可对比性和参照性,进而为记账收费提供真实可靠可信的数据。还 提供了按用户、按集群等不同层次的数据加权统计,以用户为单位的使用资源占整个资源 的比例数据,为计费提供更多角度的依据。 步骤S230,交互模块400接收管理者请求并将管理者请求发送至记账引擎500。 管理者可以选择记账相关的条件,如选择时间范围、集群范围等。 步骤S240,记账引擎500接收来自交互模块400的管理者请求,并根据管理者请求
从数据库300中读取满足管理者请求的数据,然后根据管理者请求对满足管理者请求的数
据分析处理后生成账单,并将账单反馈至交互模块400呈现给管理者。 可以根据具体的运行指标数据生成账单收费,如CPU使用量按每核X小时收费1
元,也可以按用户使用资源占整个资源的百分比收费,因为有时管理者会根据电费、机器折
旧费等计算出运营成本,并据此均摊费用。因此,本发明的账单生成方法为管理者收费提供
了多角度的数据支持。 同时,对以用户为单位统计出的资源数据可以用曲线图加以绘制展现,使得不同 用户之间使用资源情况的对比更加直观、一 目了然。 管理者可以直接浏览账单,也可以以PDF、 XLS等格式将记账内容以文件形式导 出,从而方便用户对数据的二次处理,如写月报、向上级汇报机器资源使用情况等。
应理解,上述实施例仅是示意性的实施例,并不限制本发明仅能够通过上述实施 例实现。本领域的普通技术人员还能够根据上述方案提出其他修改或变化,这些修改或变 化均应包含在本发明的包含范围之内。 通过对作业运行指标数据进行分析、统计和归一化等处理后以合理的方式提供给 管理者,为收费提供了更可靠可信的依据。 尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以 理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换 和变型,本发明的范围由所附权利要求及其等同限定。
权利要求
一种集群作业调度的账单生成系统,其特征在于,所述系统包括,作业调度监控模块,用于监视每个作业的运行指标数据,并记录所述每个作业的运行指标数据和所述作业对应的对象属性信息,以及将所述每个作业的运行指标数据和所述作业对应的对象属性信息发送至数据处理模块;所述数据处理模块,用于接收来自所述作业调度监控模块的每个作业的运行指标数据和所述作业对应的对象属性信息,对所述每个作业的运行指标数据进行处理,并将处理后的数据存储至数据库;所述数据库,用于存储所述数据处理模块的数据;交互模块,用于接收管理者请求并将所述管理者请求发送至所述记账引擎,以及接收所述记账引擎返回的账单并呈现给管理者;以及所述记账引擎,用于接收来自所述交互模块的管理者请求,并根据所述管理者请求从所述数据库中读取满足所述管理者请求的数据,以及根据所述管理者请求对所述满足管理者请求的数据分析处理后生成账单,并将所述账单反馈至所述交互模块。
2. 根据权利要求1所述的系统,其特征在于,所述作业调度监控模块包括, 监视模块,用于监视每个作业的运行指标数据;记录模块,用于记录所述每个作业的运行指标数据和所述作业对应的对象属性信息;以及发送模块,用于将所述每个作业的运行指标数据和所述作业对应的对象属性信息发送 至所述数据处理模块。
3. 根据权利要求1所述的系统,其特征在于,所述数据处理模块包括, 数据接收模块,用于接收来自所述作业调度监控模块的每个作业的运行指标数据和所述作业对应的对象属性信息;以及处理模块,用于对所述每个作业的运行指标数据以作业为单位进行处理,以及将所述 每个作业的运行指标数据按所述作业对应的对象属性进行分类,并以对象属性为单位进行 处理,以及将处理后的数据存储至所述数据库。
4. 根据权利要求1所述的系统,其特征在于,所述交互模块包括,表示界面,用于接收管理者请求,并将所述账单生成模块返回的账单呈现给管理者;以及请求处理模块,用于将所述管理者请求发送至所述记账引擎。
5. 根据权利要求1所述的系统,其特征在于,所述记账引擎包括 接收模块,用于接收来自所述交互模块的管理者请求;数据读取模块,用于根据所述管理者请求从所述数据库中读取满足所述管理者请求的 数据;账单生成模块,用于根据所述管理者请求,对所述满足管理者请求的数据分析处理后 生成账单;以及结果反馈模块,用于将所述账单生成模块生成的所述账单反馈给所述交互模块。
6. 根据权利要求1或3所述的系统,其特征在于,所述对数据的处理包括以下至少之 一分析、归一和统计。
7. 根据权利要求1或5所述的系统,其特征在于,所述账单的格式包括以下至少之一 PDF、XLS禾卩HTML。
8. —种集群作业调度的账单生成方法,其特征在于,所述方法包括以下步骤作业调度监控模块监视每个作业的运行指标数据,并记录所述每个作业的运行指标数据和所述作业对应的对象属性信息,然后将所述每个作业的运行指标数据和所述作业对应的对象属性信息发送至数据处理模块;所述数据处理模块接收来自所述作业调度监控模块的每个作业的运行指标数据和所述作业对应的对象属性信息,对所述每个作业的运行指标数据进行处理,并将处理后的数据存储至数据库;交互模块接收管理者请求并将所述管理者请求发送至所述记账引擎;以及所述记账引擎接收来自所述交互模块的管理者请求,并根据所述管理者请求从所述数据库中读取满足所述管理者请求的数据,然后根据所述管理者请求对所述满足管理者请求的数据分析处理后生成账单,并将所述账单反馈至所述交互模块呈现给管理者。
9. 根据权利要求8所述的方法,其特征在于,所述作业对应的对象属性信息包括以下至少之一 所述作业对应的提交用户、所述作业的所属集群。
10. 根据权利要求8或9所述的方法,其特征在于,所述对所述每个作业的运行指标数据进行处理,包括,对所述每个作业的运行指标数据以作业为单位进行处理;以及将所述每个作业的运行指标数据按所述作业对应的对象属性进行分类,并以对象属性为单位进行处理。
11. 根据权利要求8至10中任一项所述的方法,其特征在于,所述对数据的处理包括以下至少之一 分析、归一和统计。
12. 根据权利要求8所述的方法,其特征在于,所述账单的格式包括以下至少之一PDF、XLS禾卩HTML。
全文摘要
本发明提供一种集群作业调度的账单生成系统和方法,其中,该方法包括以下步骤作业调度监控模块监视每个作业的运行指标数据并记录,同时记录作业对应的对象属性信息,然后将记录的信息发送至数据处理模块。数据处理模块接收来自作业调度监控模块的信息,对每个作业的运行指标数据进行处理后存储至数据库。交互模块接收管理者请求并将其发送至记账引擎。记账引擎接收管理者请求,根据管理者请求从数据库中读取满足请求的数据,并根据请求对数据分析处理后生成账单,然后将账单反馈至交互模块呈现给管理者。本发明通过对作业运行指标数据进行分析、统计、归一化等处理后以合理的方式提供给管理者,为收费提供了更可靠可信的依据。
文档编号G06Q50/00GK101694712SQ20091009183
公开日2010年4月14日 申请日期2009年8月28日 优先权日2009年8月28日
发明者历军, 聂华, 邵宗有, 郭庆, 鲁四美 申请人:曙光信息产业(北京)有限公司;
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1