用于对资源的自由池建模的方法

文档序号:6618633阅读:112来源:国知局
专利名称:用于对资源的自由池建模的方法
技术领域
本发明 一般涉及使用数据处理建模电子系统,并且特别涉及建模计算 机的性能。
背景技术
许多年来,网络技术已使能了遍布全世界的计算资源的共享以及对其 的远程访问。 一台计算机可以容易地与大厅里或另一个国家里的计算机交 换数据。当然,商业世界驾驭全球网络的力量并未花费很长时间,并且网 络技术已推动了聚焦于跨这些网络递送服务的整个新产业的成长。
该新产业必须能够在最大化现有资源的同时随着客户的需求增长而预 期并满足客户的处理需求。 一种最大化资源的方法是允许客户共享计算和 联网资源。在该方法的一种实现中,服务提供商在主处理单元(通常称为 "主机"计算机)上创建计算资源的"逻辑"分区。所述共享、按需环境 中的处理能力的离散单元在这里被称为"引擎"。典型地,服务提供商与 几个客户订合同以向每个客户提供特定级别的服务,并且创建或指派资源
的逻辑分区(LPAR)给每个客户来完成职责。虽然如此,所述合同的一 个或更多在高峰^f吏用的情况下可以允许一定余地的增长。
在被一个客户高度使用的情况下,则所述服务提供商必须能够在不会 有害地影响任何其它客户资源利用的情况下为该客户提供额外的资源。为 提供这些额外的资源,所述服务提供商可以在直到该客户的使用返回正常 之前在各个逻辑分区之间重新分配计算资源。虽然如此,允许客户共享资 源要求所述服务提供商小心地均衡和监视被共享的资源,以便该提供商可 以满足所有服务职责。
当新客户预订所述按需服务时,能力规划者还必须确保所迷服务提供 商拥有足够用于每个客户的资源能力。可用于满足按需客户需求的超额资
源能力被称为"自由池"。能力规划者还频繁设置LPAR利用率的目标水 平。LPAR利用率被表述为使用中的引擎与可使用引擎的数量的比率, 其通常被表述为总能力的百分比。存在LPAR利用率目标的两个目的提 供为满足客户需求的未预期增长所必要的资源,以及面对意料之外地低的 客户需求时避免浪费资源。
现有的按需自由池能力规划方法涉及使用数学或统计模型来预测到来 客户的资源使用。能力经由添加引擎来增加,以便满足每个新客户的预期 需求。当前的能力规划方法直接关联于每个新客户的预期需求而添加能力。 因为能力身见划项目是基于部分的或估计的数据,所以所述项目是在历史上 不准确的。进一步地,现有能力规划方法不考虑多于一个客户在任意给定 时刻对能力的影响。例如,当前规划技术不考虑多个客户同时使用多于其 预期的能力。
由此,本领域中存在对这样的改进方法和系统的需求,所述方法和系 统用于估计对满足服务职责所必要的资源的自由池的大小。

发明内容
本发明提供一种如权利要求l中所要求保护的方法、计算机程序和装
下面详细描述的优选实施例包括一种用于管理按需数据中心内提供给 客户的计算资源的计算机实现的过程以及附属产品和装置,所述计算机实 现的过程包括提供在其中计算资源在客户之间被共享的共享计算环境; 为每个客户提供所述共享计算环境中的计算资源的一个或更多逻辑分区;
为每个逻辑分区分配至少一个处理引擎;将选定客户的资源利用率建模为 贝塔(P)分布,其中,所述P分布的众数标记所述选定客户的预期资源 利用率;通过所述p分布迭代地选择随机资源利用率值,以及,对于每个 逻辑分区计算处理引擎差额,其中,所述处理引擎差额是分配给每个逻辑
分区的处理引擎数与对于为每个逻辑分区提供所述随机资源利用率必要的
处理引擎数之间的差;对于每次迭代,计算集体处理引擎差额直到该集体 处理引擎差额汇聚于最优处理引擎差额;以及根据所述最优处理引擎差额 来调整处理引擎的数量以便达到最优自由池大小。 优选地,迭代的次数至少为2000次。


被确信为新颖特征的本发明的特征在所附权利要求中阐明。然而,通 过参考下面当结合附图阅读时对示例性实施例的详细描述,本发明其自己
及其优选的使用模式、进一步的目的和优点将被最好地理解,在附图中 图1表示示例性的按需操作环境。 图2描述计算机上的存储器中的程序和文件。 图3是示例性p分布的图。 图4是配置部件的流程图。 图5是计算部件的流程图。
具体实施例方式
本发明的原理适用于多种计算积^更件和软件配置。术语"计算机硬件" 或"硬件,,当用在这里时是指能够接受数据、对数据实施逻辑操作、存 储数据或显示数据并且包括但不限于处理器和存储器的任意机器或装置; 术语"计算机软件"或"软件,,是指可运转为导致计算机硬件实施操作
的任意指令集。当"计算机"这一术语用在这里时包括但不限于硬件和软 件的任意有用组合,以及"计算机程序"或"程序"包括但不限于可运转 为导致计算机硬件接受数据、对数据实施逻辑操作、存储数据或显示数据 的任意软件。计算机程序可以是并且通常是由包括但不限于子程序、模块、 函数、方法和过程的多个较小编程单元组成的。由此,本发明的功能可以 被分布在多个计算机和计算机程序中。虽然如此,本发明被最好地描述为 配置一个或更多通用计算机并使其能够实现本发明的新颖方面的单一计算
机程序。为了说明的目的,本发明的计算机程序将被称为"按需自由池建
模器"或"ODFPM"。
另夕卜,所述ODFPM在下面参考示例性按需操作环境被描述。在按需 数据中心内,硬件和软件被共享,其以灵活、自动化的方式同时服务于多 个客户。其是标准化的从而几乎不需要定制,并且其是可缩放的从而以现 购现付(pay-as-you-go)模型按需提供能力。图l提供本发明的按需操作 环境100的体系结构的概览。在基础设施服务层105,所述环境的部件可 以是例如服务器106、存储装置107和数据108的系统对象,或者针对特 定纵向产业或更一般地当其横向跨产业应用时定义的例如记帐109和计量 110的业务对象。在应用服务层115,部件是组成复杂但灵活得多的应用的 动态集成的应用模块。
ODFPM 200及其部件——配置部件400和计算部件500典型纟皮存储 在存储器中,其中,所述存储器在图2中被示意地表示为存储器220。术 语"存储器,,当用在这里时包括但不限于计算机可以在其中存储数据或软 件任意长时间的例如电子电路、磁盘或光盘的任意易失性或永久介质。单 一存储器可以包含多个介质并跨多个介质分布。由此,图2仅作为描述性 手段被包括,并且不是必然地反映存储器220的任何特定物理实施例。虽 然如此,如图2中所示,存储器220可以包括附加的数据和程序。对ODFPM 200特别重要的是,存储器220可以包括ODFPM 200与之交互的配置数 据文件240和计算数据文件250。
ODFPM 200使用贝塔(p )分布模拟来预测为达到利用率目标所需的 自由池的大小。该模拟使用概率以便在指定范围的可能结果中运行数千个 "假定推测(what-if)"场景。事件的概率可以被表述为贝尔曲线或I3分 布。所述模拟的结果可以被画成图以及被统计地分析,以便确定最可能的 结果和计算为达到想要的结果的变量的最佳配置。p分布模拟仅需要对客 户资源使用的估计来预测给定利用率目标所需的能力。ODFPM 200用p 分布来估计客户资源利用率。p分布像贝尔曲线一样是封闭积分。每个客 户将使用其各自的LPAR的0%与100%之间的某处。多数时候,客户将
仅使用可用能力的一部分,例如70%。 p分布提供描述客户的所有可能使 用水平的可预测和可重复的随机利用率集合。所迷p分布的"众数"或顶 点标记客户的预期利用率。所述P分布的曲线示出存在客户在预期水平处 或其附近使用资源的高概率,以及示出在极限处使用的低概率。例如,图 3示出了三个p分布。在图3中,p分布301在.5或50%处具有众数,p 分布302在.7或70%处具有众数,以及(5分布303在.9或90%处具有众数。 该P分布模拟将使用可能资源利用率的P分布来运行数千场景,并且确定 对达到目标利用率所必要的改变。所述模拟的结果将示出,为满足目标利 用率水平需要多少能力。
图4示出了配置部件400的实施例。配置部件400当被能力规划者启 动时开始(410)。配置部件400打开配置数据文件240 (412)并且提示 所述能力规划者输入模拟输入(414 )。所述模拟输入包括LPAR的数量、 分配给每个LPAR的引擎的数量、所有LPAR的集体目标利用率以及每个 LPAR的预期客户利用率目标。分区的数量和用于每个分区的引擎的数量 描述资源的初始配置。客户利用率目标是对由每个客户提供的LPAR利用 率的估计,其通常相对于期望性能准则来均衡引擎成本。所述模拟输入被 保存到配置数据文件240 ( 416 ),并且配置部件400停止(418 )。
图5示出了计算部件500的实施例。计算部件500当被能力规划者启 动时开始(510 ),并且打开配置数据文件240和计算数据文件250 ( 512 )。 因为不存在对每个LPAR上的实际利用率可用的任何已知值,计算部件 500生成p分布来估计LPAR利用率的可能水平的范围(514)。所述卩 分布的"众数",皮设在所述预期LPAR利用率处。计算部件500通过所述 P分布选择随机利用率,计算对支持所述随机生成的利用率必要的引擎的 数量,并且将所述计算存储在计算数据文件250中(516)。在本发明的一 实施例中,能力是全部引擎的函数,并且结果被向上舍入到下一个整数。 虽然如此,可替换实施例支持分数引擎,由此减轻对向上舍入到整数的需 求。虽然如此,甚至当使用分数引擎时,舍入到下一个最高的十分之一可 以是期望的。用于计算新的所需引擎的数量的方程为(新引擎数)=上
限(随机利用率/目标利用率*引擎数)。例如,如果能力规划者指定52% 的目标利用率和分区中的3个引擎,以及通过p分布随机生成的利用率为 80%,则所述方程将产生以下结果(新引擎数)=上限(.80/.52*3 ) -上限(4.6) =5个引擎。处理引擎差额是新的处理引擎数与分配给指定 LPAR的处理引擎数之间的差(即,新引擎数-引擎数)。在本示例中, 所述处理引擎差额等于两个额外的引擎,因为为了达到针对客户的预期利 用率的目标利用率需要两个额外的引擎。计算部件500基于新引擎数来计 算分区的新利用率,并且将所述计算存储在计算数据文件250中(518)。 用于使用新? 1擎数来计算分区的利用率的方程为新利用率=随机利用率* 引擎数/新引擎数。计算部件500针对每个LPAR重复步骤516 - 518( 520 )。 在利用率针对每个LPAR被计算出之后,计算部件500计算集体处理引擎 差额,并且将所述计算存储在计算数据文件250中(522)。所述集体处理 引擎差额表示所有LPAR所需的新处理引擎数与所述按需数据中心内分配 给所有LPAR的初始的处理引擎数之间的差(即,求和(新引擎数) -求 和(引擎数))。计算部件500还计算平均的新集体LPAR利用率,并且 将所述计算存储在计算数据文件250中(524)。计算部件500然后将所述 平均利用率与目标利用率比较;直到所述平均利用率与目标利用率汇聚
(converge)(步骤516)之前,步骤514-524重复。计算部件500在平 均利用率与目标利用率汇聚之前可以实施超过2,000次迭代。阈值可以被 设置,从而当平均利用率足够靠近目标利用率时迭代停止。由于通过在步 骤516中向上舍入到下一个完整引擎导致的约束,平均新利用率可能不会 精确地是目标利用率。在所有迭代被完成之后,计算部件500显示最终计 算出的自由池和最终目标利用率(528)。所述最终计算出的自由池是为支 持新客户和维持目标利用率所需的新引擎数。所述最终目标利用率是被所 述新自由池支持的平均利用率。在显示所述输出之后,计算部件500停止
(530)
本发明的优选形式已在附图中被示出并在上面被描述,但该优选形式 中的变型对于本领域的技术人员将是显而易见的。前面的描述仅用于说明
目的,并且本发明不应当被解释为限于所示出和描述的特定形式。本发明 的范围应当仅由下面权利要求的语言限制。
权利要求
1.一种用于管理数据中心内提供给用户的计算资源的计算机实现的方法,在所述数据中心内所述计算资源在所述用户之间被共享;所述计算资源的一个或更多逻辑分区被分配给每个用户,以及至少一个处理引擎被分配给每个逻辑分区;所述方法包括以下步骤将选定用户的资源利用率建模为β分布,其中,所述β分布的众数关联于该选定用户的预期资源利用率;通过所述β分布选择随机资源利用率值;以及使用所述随机资源利用率值确定自由池大小。
2. 根据权利要求l所述的方法,进一步包括使用所述随机资源利用 率值确定用于支持所述随机资源利用率的第 一处理引擎数。
3. 根据权利要求2所述的方法,进一步包括使用所述第一处理引擎 数确定第一利用率值。
4. 根据权利要求l所述的方法,进一步包括 对于每个逻辑分区计算多个利用率值;以及 使用所述多个利用率值计算平均利用率值。
5. 根据权利要求4所述的方法,进一步包括将所述平均利用率值与 目标利用率值比较,以便确定所述平均利用率值与所述目标利用率值是否 汇聚。
6. 根据权利要求2所述的方法,进一步包括对于每个逻辑分区计算 第一处理引擎差额,其中,所述第一处理引擎差额包括分配给每个逻辑分 区的处理引擎数与所述第一处理引擎数之间的差。
7. 根据权利要求6所述的方法,进一步包括 通过所述p分布迭代地选择随机资源利用率值;以及 对于每次迭代,计算集体处理引擎差额直到该集体处理引擎差额与第二处理引擎差额汇聚。
8. 根据权利要求7所述的方法,进一步包括使用所述第二处理引擎 差额来调整分配给每个逻辑分区的处理引擎数,以便达到第一 自由池大小。
9. 根据权利要求l所述的方法,其中,所述选定用户的预期资源利用 率包括预期峰值资源利用率。
10. 根据权利要求1所述的方法,其中,所述选定用户的预期资源利 用率包括预期平均资源利用率。
11. 一种用于管理数据中心内提供给用户的计算资源的计算机程序, 在所述数据中心内所述计算资源在所述用户之间被共享;所述计算资源 的一个或更多逻辑分区被分配给每个用户,以及至少一个处理引擎被分配 给每个逻辑分区;所述计算机程序产品包括具有计算机可读程序的计算机 可用介质,其中,所述计算机程序包括当所述程序4皮运行在计算机上时适 于实施以下步骤的程序代码装置将选定用户的资源利用率建模为P分布,其中,所述p分布的众数关 联于所述选定用户的预期资源利用率;通过所述p分布选择随机资源利用率值;以及 使用所述随机资源利用率值确定自由池大小。
12. 根据权利要求ll所述的计算机程序,其中,当所述程序被运行在 计算机上时,所述程序代码装置适于实施以下步骤处理引擎数。
13. 根据权利要求12所述的计算机程序,其中,当所述程序被运行在 计算机上时,所述程序代码装置适于实施以下步骤使用所述第 一处理? 1擎数确定第 一利用率值。
14. 根据权利要求13所述的计算机程序,其中,当所述程序被运行在 计算机上时,所述程序代码装置适于实施以下步骤对于每个逻辑分区计算多个利用率值,以及^f吏用所述多个利用率值计 算平均利用率值。
15. 根据权利要求14所述的计算机程序,其中,当所述程序被运行在 计算机上时,所述程序代码装置适于实施以下步骤 将所述平均利用率值与目标利用率值比较,以^^确定所述平均利用率 值与所述目标利用率值是否汇聚。
16. 根据权利要求12所述的计算机程序,其中,当所述程序被运行在 计算机上时,所述程序代码装置适于实施以下步骤对于每个逻辑分区,计算第一处理引擎差额,其中,所述第一处理引 擎差额包括分配^个逻辑分区的处理引擎数与所述第一处理引擎数之间 的差。
17. 根据权利要求16所述的计算机程序,其中,当所述程序被运行在 计算机上时,所述程序代码装置适于实施以下步骤通过所述p分布迭代地选择随机资源利用率值;以及 对于每次迭代,计算集体处理引擎差额直到所述集体处理引擎差额与 第二处理引擎差额汇聚。
18. 根据权利要求17所述的计算机程序,其中,当所述程序被运行在 计算机上时,所述程序代码装置适于实施以下步骤使用所述第二处理引擎差额来调整分配给每个逻辑分区的处理引擎 数,以便达到第一自由池大小。
19. 根据权利要求ll所述的计算机程序,其中,所述选定用户的预期 资源利用率包括预期峰值资源利用率。
20. 根据权利要求ll所述的计算机程序,其中,所述选定用户的预期 资源利用率包括预期平均资源利用率。
21. —种用于管理数据中心内提供给用户的计算资源的装置,在所述 数据中心内所述计算资源在所述用户之间被共享;所述计算资源的一个或更多逻辑分区被分配给每个用户;以及 至少一个处理引擎被分配给每个逻辑分区;所述装置包括用于将选定用户的资源利用率建模为P分布的装置,其中,所述 p分布的众数关联于所述选定用户的预期资源利用率;用于通过所述p分布选择随机资源利用率值的装置;以及 用于使用所述随机资源利用率值确定自由池大小的装置。
22. 根据权利要求21所述的装置,进一步包括用于使用所述随^L资 源利用率值确定用于支持所述随机资源利用率的第一处理引擎数的装置。
23. 根据权利要求22所述的装置,进一步包括用于使用所述第一处 理引擎数确定第一利用率值的装置。
24. 根据权利要求23所述的装置,进一步包括 用于对于每个逻辑分区计算多个利用率值的装置;以及用于使用所述多个利用率值计算平均利用率值的装置。
25. 根据权利要求24所述的装置,进一步包括用于将所述平均利用是否汇聚的装置。
26. 根据权利要求22所述的装置,进一步包括对于每个逻辑分区, 用于计算第一处理引擎差额的装置,其中,所述第一处理引擎差额包括分 配^个逻辑分区的处理引擎数与所述第 一处理引擎数之间的差。
27. 根据权利要求26所述的装置,进一步包括用于通过所述p分布迭代地选择随机资源利用率值的装置;以及 对于每次迭代,用于计算集体处理引擎差额直到所述集体处理引擎差 额与第二处理引擎差额汇聚的装置。
28. 根据权利要求27所述的装置,进一步包括用于使用所述第二处 理引擎差额来调整分配^个逻辑分区的处理引擎数以便达到第一 自由池 大小的装置。
29. 根据权利要求21所述的装置,其中,所述选定用户的预期资源利 用率包括预期峰值资源利用率。
30. 根据权利要求21所述的装置,其中,所述选定用户的预期资源利 用率包括预期平均资源利用率。
全文摘要
本发明包括一种用于管理按需数据中心内提供给客户的计算资源的计算机实现的过程。所述过程包括提供共享计算环境;为每个客户提供所述共享计算环境中的计算资源的一个或更多逻辑分区;为每个逻辑分区分配至少一个处理引擎;将选定客户的资源利用率建模为β分布;通过所述β分布迭代地选择随机资源利用率值,以及,对于每个逻辑分区,计算处理引擎差额;对于每次迭代,计算集体处理引擎差额直到该集体处理引擎差额汇聚于最优处理引擎差额;以及,根据所述最优处理引擎差额来调整处理引擎数,以便达到最优自由池大小。
文档编号G06F9/46GK101361045SQ200780001766
公开日2009年2月4日 申请日期2007年1月8日 优先权日2006年1月23日
发明者C·A·佐洛托, R·C·约翰逊, R·小伯伊斯, T·N·诺斯维, W·施密特 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1