用于在用户间有效分配计算资源的系统、方法转让专利

申请号 : CN200510062577.6

文献号 : CN1677420B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 格利高里·J.·博斯里克·A.·哈密尔顿二世凯文·C.·麦克内尔詹姆斯·W.·斯曼

申请人 : 国际商业机器公司

摘要 :

在员工工作需求与计算资源使用模式的环境下基于员工等级、工作职能和已证明的工作站性能的组合在员工间分配硬件和软件资源的计算资源分配系统。该系统为计算资源收集各种性能数据。一组策略规则应用到所收集的性能数据并由本系统处理。因此,本系统基于商业需求和可用资源自动识别并区分需要技术升级和替换的员工的优先次序。计算资源的性能数据被捕捉并发送到中央收集代理。从该性能数据,本系统基于系统性能或错误确定什么时候如存储器增加或适配器更快的部分升级是合适的。此外,本系统还确定什么时候计算资源经受连续的性能问题。

权利要求 :

1.一种用于在多个用户间分配多个计算资源的方法,包括:收集多个性能数据;

对收集到的性能数据应用策略规则,将收集到的性能数据与多个度量进行比较,其中多个度量是多个利用数字评估来量化应用或计算机系统的允许性能的度量,并且所述多个度量包括用户的工作描述和工作等级;及由至少一种以下动作自动分配计算资源:升级组件、替换组件、升级计算资源及替换计算资源。

2.如权利要求1所述的方法,其中所收集的性能数据包括其中计算资源参与过度分页活动的时间百分比。

3.如权利要求1所述的方法,其中所收集的性能数据包括其中计算资源参与过度CPU使用的时间百分比。

4.如权利要求1所述的方法,其中所收集的性能数据包括其中计算资源受输入/输出设备约束的时间百分比。

5.如权利要求4所述的方法,其中所收集的性能数据包括多个时间百分比与在计算资源上运行的应用处理的关联。

6.如权利要求1所述的方法,其中收集性能数据包括记录多个出现在计算资源上的事件。

7.如权利要求1所述的方法,其中收集性能数据包括记录多个由计算资源经受的错误。

8.如权利要求1所述的方法,其中多个度量包括与用户的工作描述和等级关联的组件的可允许组件性能。

9.如权利要求1所述的方法,其中多种度量包括与用户的工作描述和等级关联的计算资源的可允许系统性能。

10.一种用于识别多个组件资源和多个计算资源在多用户间的最佳分配的方法,该方法包括:为组件资源和计算资源的最佳分配指定一组需求;

识别指示组件资源和计算资源替换的性能等级的第一组度量;

识别指示组件资源和计算资源升级的性能等级的第二组度量;

将第一组度量和第二组度量关联于用户的工作描述和等级,创建度量表;

调用自动硬件分配实用程序,其中使第一组度量、第二组度量和度量表可用于所考虑的自动硬件分配实用程序;及从自动硬件分配实用程序接收满足了指定需求组的组件资源和计算资源的最佳分配。

11.如权利要求10所述的方法,还包括收集多个性能数据;

其中所收集的性能数据包括多个时间百分比与在计算资源上运行的应用处理的相关性,其中多个时间百分比包括以下各项中的至少一种:其中计算资源参与过度分页活动的时间百分比、其中计算资源参与过度CPU使用的时间百分比、以及其中计算资源受输入/输出设备约束的时间百分比。

12.如权利要求11所述的方法,其中收集性能数据包括记录多个出现在计算资源上的事件。

13.如权利要求11所述的方法,其中收集性能数据包括记录多个由计算资源经受的错误。

14.如权利要求10所述的方法,其中第一组度量和第二组度量中任一组都包括用户的工作描述。

15.如权利要求10所述的方法,其中第一组度量和第二组度量中任一组都包括用户的工作等级。

16.如权利要求15所述的方法,其中第一组度量和第二组度量中任一组都包括与用户的工作描述和等级关联的组件的可允许组件性能。

17.如权利要求15所述的方法,其中第一组度量和第二组度量中任一组都包括与用户的工作描述和等级关联的计算资源的可允许系统性能。

18.如权利要求11所述的方法,还包括:

将收集到的性能数据与多个度量进行比较,其中多个度量是多个利用数字评估来量化应用或计算机系统的允许性能的度量;及由至少一种以下动作自动分配计算资源:升级组件、替换组件、升级计算资源及替换计算资源。

19.一种用于在多个用户间分配多个计算资源的系统,包括:性能代理,收集多个性能数据并对收集到的性能数据应用策略规则;

资源识别模块,将收集到的性能数据与多个度量进行比较,其中多个度量是多个利用数字评估来量化应用或计算机系统的允许性能的度量,并且所述多个度量包括用户的工作描述和工作等级;及资源分配器,由至少一种以下动作自动分配计算资源:升级组件、替换组件、升级计算资源及替换计算资源。

20.如权利要求19所述的系统,其中所收集的性能数据包括其中计算资源参与过度分页活动的时间百分比。

21.如权利要求19所述的系统,其中所收集的性能数据包括其中计算资源参与过度CPU使用的时间百分比。

22.如权利要求19所述的系统,其中所收集的性能数据包括其中计算资源受输入/输出设备约束的时间百分比。

23.如权利要求22所述的系统,其中所收集的性能数据包括多个时间百分比与在计算资源上运行的应用处理的关联。

24.如权利要求19所述的系统,其中性能代理记录多个出现在计算资源上的事件。

25.如权利要求19所述的系统,其中性能代理记录多个由计算资源经受的错误。

26.如权利要求21所述的系统,其中多个度量包括与用户的工作描述和等级关联的组件的可允许组件性能。

27.如权利要求21所述的系统,其中多个度量包括与用户的工作描述和等级关联的计算资源的可允许系统性能。

说明书 :

用于在用户间有效分配计算资源的系统、方法

技术领域

[0001] 本发明总体上涉及监视如计算机的计算资源的性能。更具体而言,本发明涉及对收集到的性能数据应用策略规则,从而在员工工作需求和计算资源使用模式的环境下以自动方式在员工间最佳分配硬件和软件资源。

背景技术

[0002] 对于大多数为商业效率和竞争优势而依赖计算资源的现代商业,必须使关键员工能访问有效执行其工作所需的计算设备类型。在今天的信息技术(IT)环境下,保持员工的计算机系统运行在最佳等级是一项需要占用很多人的挑战。这项挑战中固有的问题是对特定员工过度分配或过低分配资源的问题。
[0003] 过度分配可以用“无所不能”新计算机系统交给对分配给他或她的硬件或软件没什么需要的新员工的情况来说明。通过向没有比电子邮件功能更多的需求的入门级员工提供裁边系统,公司或发行实体实际上是浪费钱并错误地管理重要的商业资源。在这种过度分配中,公司可能将价值$2000的系统交给其需求只要$500的系统或通过重新使用老的、“剩下的”系统就能满足的员工。
[0004] 过低分配造成生产率问题及其它更多细微的问题。例如,向面向客户的市场执行官提供低端系统造成客户可以看出的公司竞争力的问题。很容易想像这样一种情况:执行官在重要客户面前进行演示而该客户由于计算机系统和进行演示的差的性能而没有留下什么好印象。因此,过低分配有可能造成损失收入和客户信誉的商业影响。类似地,具有重大计算需求的开发人员可能分配给旧的过时系统。在这样做的情况下,他或她可能被迫忍受非常长的编译时间或计算建模时间,造成浪费生产率和延迟面市的商业影响。
[0005] 保持员工的计算机系统运行在最佳情况下还包括以公司预算购买可用资源。在员工经受计算机困难时,问题变成是修理还是替换系统。还有一问题是需要有目的地区分计算资源需求的优先次序从而最好地最大化公司性能和生产率。目前,关于计算资源替换的公司策略要求基于计算资源使用寿命的替换。但是,以满容量使用计算机的员工可能在替换周期提供新计算资源以前很久就经受相当大的性能降低。相反,以最小方式使用计算资源的员工能够使用相同的计算资源比替换周期所指示的时间更长。
[0006] 目前,当员工联系他们经理或公司的服务台并抱怨差的系统性能时,性能问题就得到解决。IT职工成员通常看看系统并试图确定是否存在问题。在很长一个过程后,可以进行修理、升级还是替换的选择。这个过程会变得非常麻烦,尤其是在存在许多用户和计算机的环境中。同时,在应付他们计算机不适合性能的同时,员工经受生产率的降低。
[0007] 因此,所需要的是监视计算资源性能并根据计算资源需求、工作职能和责任有目的地分配重要计算资源的系统、服务、计算机程序产品及相关方法。迄今为止,对这种解决方案的需求还没有满足。

发明内容

[0008] 本发明满足了这种需求,并提出了在员工工作需求的环境下,基于员工等级、工作职能和计算机性能、使用模式及计算机性能需求的组合在员工间最好地分配硬件和软件资源的系统、服务、计算机程序产品及相关方法(在此统称为“系统”或“本系统”)。本系统收集计算资源的各种性能数据。一组策略规则应用到所收集的性能数据并由本系统进行处理。因此,本系统基于商业需求和可用资源自动识别并区分需要技术升级和替换的员工的优先次序。
[0009] 本发明提供了一种有目的的、自动化的系统,由此需要升级或替换的计算机资源根据商业需求被识别并区分优先次序。计算资源的性能数据被捕捉并发送到中央收集服务器。从性能数据,本系统基于系统性能确定什么时候如存储器增加或适配器更快的部分升级更合适。此外,本系统还确定什么时候计算资源经受反复的性能问题。这些性能问题对用户来说就代表差的工作生产率,而且指示计算资源的替换是合适的。
[0010] 本系统确定什么时候在需要部分升级、部件替换或计算资源替换的计算资源中出现错误情况。而且,本系统对收集到的性能数据应用策略规则,使得处于关键角色的员工,如处于面向客户位置、管理位置或其它收入产生位置的员工,能在这类资源变得可用时给予更高的升级和系统替换的优先级。
[0011] 优先级可以不同方式分配。例如,在加权系统中可以使用更大的权值。可选地,与更大权值模型相比,有可能分配强制优先级,例如:这类人总是处于列表的最顶端,在更大权值模型中与低资源需求结合的更大权值不一定会使那个人具有比有更大需求和错过大收入产生的可能性的开发人员更高的优先级。
[0012] 此外,本系统对收集到的性能数据应用策略规则,使得具有相等级别或重要性的员工能基于对计算机资源的使用而不是武断的替换进程,如每三年,被分配给计算机资源替换的优先级。计算资源的使用是由例如键盘敲击或组合性能参数或度量测量的。
[0013] 本发明可以在例如自动硬件分配实用程序的实用程序中体现。本发明还为用户提供了指定满足预算约束的资源最佳分配的装置。本发明还提供了基于员工的工作描述和等级识别组件和计算机硬件替换与升级的最佳分配的装置。
[0014] 本发明还提供了基于计算资源的使用和用于提供那些替换与升级的可用资源让用户识别组件和计算机硬件替换与升级最佳分配的装置。而且,本发明还提供了让用户识别表示组件或计算资源在什么等级被替换或升级的标准或度量的装置。该标准或度量是将员工工作描述和水平与允许的组件和计算机性能关联的表。
[0015] 用户可以调用自动硬件分配实用程序来监视计算资源、识别需要替换或升级的组件和计算资源、区分组件和计算资源替换或升级优先次序并向员工推荐最大化关于公司资源的使用生产率的资源分配。需求设置包括将员工等级和员工工作描述与组件或计算资源允许的性能关联的度量表。

附图说明

[0016] 本发明的各种特征及实现它们的方式将参考以下描述、权利要求和附图更详细描述,其中在合适的地方重用标号来指示参考项之间的对应关系,其中:
[0017] 图1是其中可以使用本发明计算资源分配系统的典型运行环境的示意图;
[0018] 图2是图1计算资源分配系统高级体系结构的方框图;及
[0019] 图3由图3A和3B组成,表示说明图1和2计算资源分配系统运行方法的处理流程图。

具体实施方式

[0020] 以下定义和解释提供了关于本发明技术领域的背景信息,是为了方便本发明的理解,而不是要限制其范围:
[0021] 因特网:利用一组标准协议由路由器链接在一起以构成全球化的分布式网络的互联的公共和个人计算机网络的统称。
[0022] 软件度量(度量):利用数字评估来量化应用或计算机系统的允许性能的软件测量。
[0023] 万维网(WWW,也称为Web):因特网客户机-服务器超文本分布式信息检索系统。
[0024] 图1描述了一种典型的总体环境,其中可以使用根据本发明用于有效计算资源分配的系统、服务和相关方法。系统10包括一般嵌入或安装在主机服务器15上的软件程序代码或计算机程序产品。可选地,系统10可以保存在如磁盘、CD、硬盘驱动器或类似设备的合适存储介质上。
[0025] 如远程因特网用户的用户是由各种计算机表示的,如计算机20、25、30,而且可以通过网络35访问主机服务器15。计算机20、25、30包括可以连接到网络并操作软件应用程序或执行计算的台式计算机、工作站、膝上型计算机、大型计算机或任何其它设备。计算机20、25、30每个都包括允许用户与主机服务器15安全接口的软件。主机服务器15通过如电话、电缆或卫星链路的通信链路40连接到网络40。
[0026] 计算机20、25、30可以分别通过通信链路45、50、55连接到网络40。尽管系统10是关于网络35描述的,但计算机20、25、30还可以本地地而不是远程地访问系统10。计算机20、25、30可以手动地或通过使用应用程序自动地访问系统10。
[0027] 图2是说明系统10高级体系结构的方框图。系统10包括性能代理205、资源分配器210、资源识别算法215和收集数据库220(在此也称为收集dB220)。性能代理205安装在如计算机20、25、30的用户的计算资源上。资源分配器210、资源识别算法215和收集dB220安装在服务器15上。
[0028] 性能代理205从计算机20、25、30捕捉性能数据,包括:
[0029] ●其中计算机20、25、30参与“过度”分页活动的时间百分比,其中“过度”可以根据变化的阈值定义;
[0030] ●其中计算机20、25、30参与“过度”CPU使用的时间百分比,其中“过度”可以根据变化的阈值定义;
[0031] ●其中计算机20、25、30受I/O设备限制的时间百分比;
[0032] ●系统或应用处理与上面提到的时间百分比的相关性;及
[0033] ●由系统10记入日志的事件或错误,例如,由于计算机20、25、30的可用资源小于软件应用程序最小系统需求而造成的软件应用程序失败的安装。
[0034] 此外,性能代理205还捕捉任何关于计算机20、25、30的可用于确定计算机20、25、30执行情况如何及计算机20、25、30被用户用到什么程度的性能参数。在一种实施方式中,性能参数基于计算机20、25、30的平均使用,而不是时间百分比。
[0035] 性能代理205收集关于计算机20、25、30和运行在计算机20、25、30上的软件应用程序性能的性能数据,以获得对“过度”资源活动的源的更深入洞察。“过度”资源活动并不一定表示需要组件升级、组件替换或新的计算资源。例如,一占用90%以下CPU使用率的处理可能表示用户调用的活动。而另一占用90%以上CPU使用率的处理可能表示关于例如文件系统索引的次优化软件配置问题。在前一种情况下,系统10认为比后者过度CPU使用严重。系统10对这两种典型情形推荐能最优地校正“过度”资源活动源的不同响应。
[0036] 由性能代理205收集的性能数据以周期为基础转发到服务器15上的资源分配器210。然后,资源识别算法215对所收集到的数据应用策略规则。
[0037] 系统10所作的计算机20、25、30中可接受过度分页的确定可以由员工组和员工职能来确定。例如,对于组6的办事员员工,比处于组10的开发人员能忍受更高等级的过度计算机分页。
[0038] 最初定义的可接受极限可从终端用户的角度由相关事件动态修改。如帮助中心技术人员的人可以更新度量表,在这一点所有被监视的站都将基于新的值进行评估。例如,如果当分页高于15%时,特定等级的用户总是打电话抱怨性能,而目前的度量表允许20%,则可以决定将目前的值降到14%。这种处理也可以自动化。作为例子,系统10可以周期性地查询帮助中心数据库,如果检测到刚描述的趋势,则度量表自动更新。
[0039] 作为例子,由信息技术部门运作的“帮助中心”为公司内部员工收集的数据是员工认为什么是可接受性能范围的很好指示。如果相似类别的几个员工给“帮助中心”打电话对具有类似特征的性能问题抱怨,则阈值可用由系统10相应地上下自动加权。
[0040] 当资源分配器210识别出例如计算机20上不可接受的过度分页趋势时,资源分配器210输出为计算机20自动分配存储器的请求。不可接受的过度分页是由为员工等级和职能设计的准则定义的。系统10可以使用其它度量定义计算机20、25、30不可接受性能等级,以识别为将计算机20、25、30的性能带入可接受范围可能需要升级的其它组件。系统10可以使用矩阵来定义导致如CPU、网络适配器、磁盘适配器、磁盘驱动器及其它在计算中众所周知的外围适配器和设备等组件升级的不可接受的性能等级。
[0041] 由系统10进行的基础测量比较,如CPU过度使用,可能指示需要例如完全替换计算机20。有一张表包括用于确定计算机20、25、30是否需要替换的所收集参数的可接受性能极限。计算机20、25、30的部分升级校正关于分页或其它I/O考虑事项的性能问题。但是,基于处理器的限制可能指示需要新的计算资源,尤其是在假定令服务提供商在计算资源内增加或替换CPU的成本和新计算资源一样多的情况下。此外,被替换下来的计算资源可以重新配给具有较低计算需求的员工。
[0042] 系统10可以通过检查各种性能参数的组合确定计算机20、25、30的替换需求。任一超过可接受极限的性能参数都可能指示只需要组件的升级。但是,系统10可能同时确定几个超过可接受极限的性能参数,这些参数指示需要新的计算资源。例如,基于升级计算资源上多个独立组件的物流和成本的考虑,证明过度分页、I/O和边缘过度CPU使用的计算资源可能是替换的候选对象。
[0043] 系统10还根据计算机20、25、30组件升级或替换需求的带和工作职能设置错误情况的可接受阈值。对于许多错误情况,错误阈值可以是0或者非常接近0。但是,在特定情况下非关键性错误是可以忍受的,如暂时错误或重试情况。非关键性错误具体依赖于员工执行的职能。
[0044] 性能代理205通过“陷阱”方法收集关于计算机20、25、30的错误信息。捕获的错误信息转发到资源分配器210。资源分配器210比较该错误信息与由计算机20、25、30制造商运行的相关网站上的参考信息,以帮助确定关于计算机20、25、30的问题。例如,当利用操作系统的计算资源“蓝屏”时所收集的错误信息可以在MS知识库中参考。操作系统几种已知的陷阱是很强的存储器错误指示。因此,这种信息被系统
10用于确定自动评价错误并有可能推荐计算资源替换的需求。
[0045] 图3(图3A和3B)是说明系统10运行方法300的流程图。在步骤305,性能代理205安装在如计算机20的用户的计算资源上。每个计算资源都有将计算资源与用户关联的ID。性能代理205在步骤310以进程为基础从计算资源收集性能数据。性能数据包括计算资源运行期间经历的错误和量化计算资源性能的测量值。性能代理205在步骤315将计算资源的性能数据和ID转发到资源分配器210。资源分配器210在步骤320识别计算资源的用户,提供用于分析所收集性能数据的用户的员工等级和工作类别。
[0046] 资源分配器210按用户的员工等级和工作类别将性能数据分类(步骤325)。资源识别算法215在步骤330对性能数据应用策略规则,比较该性能数据与一组描述特定员工等级和工作类别的用户所用计算资源的允许性能的度量。在步骤335,资源识别算法215将低于所有度量的性能数据存入收集dB220。在一种实施方式中,低于所有度量的性能数据被丢弃。存储在收集dB220中的性能数据可以由系统10访问,以确定计算资源的累积性能,帮助确定组件升级、组件替换、计算资源升级还是计算资源替换。
[0047] 资源识别算法215对其中收集数据超出一个或多个性能度量的错误和实例进行分析(步骤340)。在决定步骤345,资源识别算法215确定是否在计算资源中出现了任何系统错误。如果是,则资源识别算法215前进到步骤350,并推荐替换或升级计算资源。如果当前计算资源的规范满足用户的员工等级和工作类别,则资源识别算法215推荐计算资源替换。否则,资源识别算法推荐计算资源升级。
[0048] 如果在决定步骤345资源识别算法215没有检测到系统错误,则处理前进到决定步骤355。如果在决定步骤355性能数据超过度量的错误或实例的个数等于1,则资源识别算法215在步骤360确定性能度量失败的源。资源识别算法215推荐是性能数据超过了度量的错误或实例的源的组件的替换或升级(步骤365)。如果组件的规范满足用户的员工等级和工作类别,则资源识别算法215推荐组件替换。否则,资源识别算法215推荐组件升级。
[0049] 如果在决定步骤355性能数据超过度量的错误和实例总数大于1,则资源识别算法215前进到决定步骤370。资源识别算法215确定计算资源的系统性能是否超过了度量阈值。如果是,则资源识别算法215在步骤350推荐计算资源的替换或升级。否则,资源识别算法215在步骤375确定度量失败的源。
[0050] 在计算资源中可能有引起度量失败的几个组件。如果组件的规范满足用户的员工等级和工作类别,则资源识别算法215推荐组件替换。否则,资源识别算法215推荐组件升级。依赖于在步骤375执行的分析,资源识别算法215可以推荐一些组件的替换和其它组件的升级。
[0051] 资源识别算法215可以基于单个性能数据收集点推荐组件或计算资源的替换。例如,如果性能数据是每晚收集一次,则推荐可以基于一晚上收集的性能数据启动。可选地,替换推荐可以依赖于在多个性能数据收集点建立的组合参数。为了确定组合参数,资源识别算法215可以使用移动平均数。移动平均数可以包括来自计算资源的在必须替换的很长一段时间内的性能数据。相反,移动平均数也可以包括来自计算资源、其中性能数据中出现的数据点连续个数超过上述度量阈值的性能数据。
[0052] 应当理解,所描述的本发明特定实施方式仅仅是说明本发明原理的具体应用。在不背离本发明主旨与范围的前提下,可以对在此描述的用于在用户间有效分配计算资源的系统、方法和服务进行多种修改。而且,尽管为了说明本发明只关于WWW进行了描述,但应当清楚本发明还适用于例如其中计算机或计算资源可以为计算机之间的通信目的连接在一起的任何网络。