CN108496324B - 云工作负载发放系统和方法 - Google Patents

云工作负载发放系统和方法 Download PDF

Info

Publication number
CN108496324B
CN108496324B CN201780007135.2A CN201780007135A CN108496324B CN 108496324 B CN108496324 B CN 108496324B CN 201780007135 A CN201780007135 A CN 201780007135A CN 108496324 B CN108496324 B CN 108496324B
Authority
CN
China
Prior art keywords
workload
cloud
issuance
scale factor
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201780007135.2A
Other languages
English (en)
Other versions
CN108496324A (zh
Inventor
克里希纳·曼基利·库马尔
唐盛军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN108496324A publication Critical patent/CN108496324A/zh
Application granted granted Critical
Publication of CN108496324B publication Critical patent/CN108496324B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5033Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering data affinity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

公开了一种云工作负载发放系统和方法。在一种实施方式中,本发明提供了一种系统,能够向用户提供对要发放的工作负载的自动引导。本发明根据各种历史数据集匹配用户的工作负载概要文件,便于用户为各类工作负载选择云发放。如果用户愿意,本系统能够在云发放过程中自动重新调整工作负载概要文件,同时提供云发放的手动选择选项。在一种实施方式中,本发明提供了一种采用历史数据集获得工作负载发放比例因子机制的系统和方法。进一步地,该系统和方法还能够根据用于云发放的工作负载概要文件自动或手动重新调整发放比例因子。

Description

云工作负载发放系统和方法
技术领域
本发明涉及联网计算环境(如云计算环境)中的资源发放,具体而言,涉及一种采用基于历史数据的方法来进行资源发放的系统和方法。
背景技术
联网计算环境(如云计算环境)是对先前网格环境的强化,其中,通过一个或多个附加抽象层(如云层),可以对多个网格和其它计算资源进行进一步强化,从而使不同的设备作为单个无缝资源池的最终用户。这些资源可包括物理或逻辑计算引擎、服务器和设备、设备存储器、存储设备等。
云计算服务通常呈现在相对静态的硬件池中,通过部署和重新配置操作系统和应用,以满足用户的计算需求。在云环境的边界内,应用图像可以被安装和覆盖,互联网协议(Internet Protocol,简称IP)地址可以被修改,且可以分配真实和虚拟处理器以满足不断变化的业务需求。目前,不同的云服务提供商可能会花费不同的时间来发放用户要求的计算资源工作负载。例如,一些云提供商可以在几秒钟内发放特定的资源,而其他云提供商可能要花费几个小时。
进一步地,云工作负载发放由不同的厂商以不同的方式完成。大多数情况下,选择预定义的模板,并将应用部署到该模板。然而,应用的实际资源使用率在初始阶段或开始时可能未知,因此资源被任意分配。这是一个主要问题,即有时候过多的资源发放会导致浪费,而其它情况下发放过少则可能导致系统性能降低(甚至是应用状态的丢失)。此外,用于即时工作负载调整的发放预测模型,分析各种参数以及将所有这些参数并入发放决策过程中是通过现有技术采用各种方法完成的。然而,现有方法较复杂,需要了解很多参数以便确定正确的云发放,这使得资源选择十分不理想且低效。
发明内容
提供本发明内容以介绍与用于云工作负载发放系统和方法相关的概念,并且在下面的详细介绍中进一步描述。本发明内容不旨在确定所请求保护主题的必要特征,也不旨在确定或限定所请求保护主题的范围。
本发明的主要目的是通过提供采用基于历史数据的方法来进行工作负载发放的系统和方法来解决上述技术问题。
本发明的另一目的是提供一种采用基于历史数据的方法获得的比例因子进行云工作负载发放的系统和方法。
本发明的另一目的是提供一种提供自动引导以帮助用户进行资源选择的系统和方法。
本发明的另一目的是提供一种采用历史工作负载概要文件的系统和方法,基于工作负载概要文件对应用进行分类,并获得最佳方法以识别用于实现云发放的资源。
本发明的另一目的是提供一种具有界面的系统和方法,该界面使得用户能够选择手动或自动调整资源,以便根据需要满足预期或最佳状况。
本发明的另一目的是提供一种采用历史数据集获得工作负载发放比例因子机制的系统和方法。
本发明的另一目的是提供一种基于发放比例因子的系统和方法,该发放比例因子能够自动或手动重新调整用于云发放的工作负载概要文件。
本发明的另一目的是提供一种选择发放机制的系统和方法。
本发明的另一目的是提供一种通知所发放的资源和基于发放的资源的收费/费用的系统和方法。
相应地,在一种实施方式中,本发明提供了一种采用历史数据集获得工作负载发放比例因子机制的系统和方法。进一步地,该系统和方法还能够根据用于云发放的工作负载概要文件自动或手动重新调整发放比例因子。
在一种实施方式中,公开了一种云工作负载发放方法。所述方法包括:接收至少一个云工作负载发放请求;通过历史数据集的至少一个工作负载概要文件来获得所述接收的云工作负载发放请求的工作负载发放比例因子;自动或手动重新调整云工作负载发放的工作负载发放比例因子。
在一种实施方式中,本发明提供了一种云工作负载发放方法。所述方法包括:在联网计算环境的计算机数据结构中接收至少一个云工作负载发放的云工作负载发放请求;识别至少一个与接收的云工作负载发放请求相关联的参数;根据识别的参数和至少一个预存储工作负载概要文件,获得所述接收的云工作负载发放请求的工作负载发放比例因子;根据所述确定的比例因子发放云工作负载。
在一种实施方式中,公开了一种联网计算环境下的云工作负载发放系统。所述系统包括处理器和耦合到处理器的存储器,用于执行存在于存储器中的多个模块。所述多个模块包括接收模块、引擎、重调整模块和工作负载发放模块。所述接收模块用于接收至少一个云工作负载发放请求。所述引擎用于通过历史数据集的至少一个工作负载概要文件获得所述接收的云工作负载发放请求的工作负载发放比例因子。所述重调整模块用于自动或手动重新调整所述工作负载发放比例因子。所述工作负载发放模块用于根据所述重新调整的工作负载发放比例因子发放所述云工作负载。
在一种实施方式中,本发明提供了一种联网计算环境下的云工作负载发放系统。所述系统包括处理器和耦合到处理器的存储器,用于执行存在于存储器中的多个模块。所述多个模块包括接收模块、识别模块、引擎和工作负载发放模块。所述接收模块用于在联网计算环境的计算机数据结构中接收至少一个云工作负载发放的云工作负载发放请求。所述识别模块用于识别至少一个与接收的云工作负载发放请求相关联的参数。所述引擎用于根据识别的参数和至少一个预存储的工作负载概要文件,获得所述接收的云工作负载发放请求的工作负载发放比例因子。所述工作负载发放模块用于根据所述确定的比例因子发放所述云工作负载。
在一种实施方式中,本发明提供了一种云工作负载发放方法。所述方法包括:接收至少一个云工作负载概要文件发放请求;将所述接收的云工作负载概要文件发放请求与多个历史工作负载概要文件进行比较;通过所述历史工作负载概要文件,获得所述接收的云工作负载概要文件发放请求的工作负载发放比例因子;自动或手动重新调整所述云工作负载概要文件发放请求的工作负载发放比例因子,从而根据所述工作负载发放比例因子发放云工作负载。
在一种实施方式中,本发明提供了一种用于根据历史数据在云环境下分配工作负载的云工作负载发放系统。所述系统包括数据库,该数据库包括历史工作负载概要文件的历史数据表中的历史数据的存储库。所述系统还包括引擎,用于搜索历史数据的存储库,以选择至少一个基于接收的云工作负载概要文件发放请求的历史工作负载概要文件;通过历史工作负载概要文件获得接收的云工作负载概要文件发放请求的工作负载发放比例因子;自动或手动重新调整云工作负载概要文件发放请求的工作负载发放比例因子,从而根据工作负载发放比例因子发放云工作负载。
与现有技术相反,如可用,本发明采用历史数据集获得工作负载发放比例因子机制。本发明基于发放比例因子,自动或手动重新调整用于云发放的工作负载概要文件。
现有技术中要了解过多参数以了解正确的云发放,使得用户资源选择十分不理想,与现有技术相比,本发明提供了有助于工作负载发放的自动引导,而非更新所有列值。进一步地,与现有技术相比,本发明提供了一种机制,能使用户能够理解如何在系统中进行发放,并且还帮助用户作出关于如何发放工作负载的合理决定。本发明提供一种改进发放的机制,鉴于所有当前发放更多的是用来通过历史工作负载概要文件进行即时工作负载调整的预测模型,基于历史工作负载概要文件对应用进行分类,并获得一些最佳方法以识别用于云发放的系统资源。此外,与现有技术相比,本发明提供了一种界面,通过用户选择来进行手动和自动调整,并根据系统推荐值来修改工作负载发放。这大大提升了系统的可用性,并且减少了资源浪费。
上述与第一实施方式相关的各种选项和优选实施例也适用于其它相关实施方式。
附图说明
该详细描述是参考附图描述的。在附图中,标号最左边的数字表示所述标号在该附图中首次出现。相同的数字在所有附图中指代相同的特征和组件。
图1示出了本主题实施例提供的使用比例因子进行云工作负载发放的工作流程;
图2(a)示出了本主题实施例提供的向云门户提供用户工作负载时显示的界面;
图2(b)示出了本主题实施例提供的示出一种显示器的界面,该显示器建议了用户工作负载概要文件的比例因子;
图2(c)示出了本主题实施例提供的在工作负载发放后显示通知的界面;
图3示出了本主题实施例提供的比例因子——样本估计;
图4示出了本主题实施例提供的云工作负载发放系统;
图5示出了本主题实施例提供的云工作负载发放方法;
图6示出了本主题实施例提供的联网计算环境下的云工作负载发放系统。
应当理解,附图旨在说明本发明的概念,可能未按比例绘制。
具体实施方式
现参考附图更详细地描述说明性实施例,其中示出了示例性实施例。然而,本发明可以以许多不同的形式体现,并且不应被视为对本文阐述的示例性实施例的限制。相反,通过提供这些示例性实施例,以使本发明彻底而完整,同时向本领域技术人员充分地传达本发明的范围。在描述中,可以省略公知的特征和技术细节,以避免不必要地模糊化所呈现的实施例。
本文使用的术语仅用于描述特定实施例,而并不在于限制本发明。除非上下文清楚说明,否则本文所用的单数形式“一”和“所述”包括其复数形式。此外,使用术语“一”、“一种”等不表示数量的限制,而是表示存在所引项的至少一个。应进一步了解,本说明书中所用的术语“包括”用于说明存在所述特征、区域、整数、步骤、操作、元件和/或部件,但并不排除存在或添加一个或多个其它特征、区域、整数、步骤、操作、元件、部件和/或它们的组合。
总的来说,本发明的实施例提供云工作负载发放的系统和方法。在典型的实施例中,公开了一种通过历史数据集获得工作负载发放比例因子机制的系统和方法。进一步地,该系统和方法还能够根据用于云发放的工作负载概要文件自动或手动重新调整发放比例因子。
应先理解,虽然本发明包括云计算的详细描述,但此处所述的理念的实现不限于云计算环境。相反,可以结合现已知或后期开发的任何其它类型的计算环境来实现本发明的实施例。
云计算是一种服务交付模型,可以方便且按需对可配置计算资源(如网络、网络带宽、服务器、处理器、内存、存储器、应用、虚拟机和服务)的共享池进行网络访问。通过最小限度的管理工作或与服务提供商之间的交互即可快速发放和释放这些资源。该云模型可包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征如下:
按需自助服务:云用户可以根据需要单方面自动发放例如服务器时间和网络存储之类的计算能力,且无须与服务提供商进行人机交互。
广泛的网络访问:能力在整个网络上可用,并通过便于异构瘦客户端或胖客户端平台(例如移动电话、笔记本电脑和PDA)使用的标准机制进行访问。
资源池化:通过对提供商的计算资源实现池化,以使用多租户模式为多个用户服务,其中不同的物理和虚拟资源根据需求动态分配和重分配。由于用户通常对所提供的资源的确切位置无法控制或不了解,但可能能够在更高抽象层(例如国家、省或数据中心)上指定位置,因而存在一种位置独立性。
快速弹性:在某些情况下,可以自动快速而弹性发放能力,以便快速扩容并快速释放以缩容。对于用户来说,可用于发放的能力通常看起来是无限的,且可以随时以任意数量进行购买。
服务可度量:云系统在某个适用于此类服务(例如存储、处理、带宽和活跃用户帐号)的抽象层利用计量能力来自动控制和优化资源使用。可以通过监视、控制和报告资源使用情况为所使用服务的提供商和用户提供透明度。
服务模型如下:
软件即服务(Software as a Service,简称SaaS):提供给用户的能力是使用在云基础设施上运行的提供商的应用。可以通过如网络浏览器(例如基于web的电子邮件)之类的瘦客户端界面从各个客户端设备访问应用。用户不管理或控制底层云基础设施,包括网络、服务器、操作系统、存储器,甚至个别应用能力,而特定用户专用的应用配置设置可能除外。
平台即服务(Platform as a Service,简称PaaS):提供给用户的能力是将使用提供商支持的编程语言和工具创建的由用户创建或获取的应用部署到云基础设施上。用户不管理或控制底层云基础设施,包括网络、服务器、操作系统或存储器,但是可以控制已部署的应用和可能的应用托管环境配置。
基础设施即服务(Infrastructure as a Service,简称laaS):提供给用户的能力是发放处理器,存储器,网络和其它基础计算资源,其中用户能够部署和运行任意软件,可包括操作系统和应用。用户不管理或控制底层云基础设施,但控制操作系统、存储器和已部署的应用,并可能有限地控制组网组件(例如主机防火墙)的选择。
部署模型如下:
私有云:云基础设施仅为一个组织运作。其可以由该组织或第三方管理,并且可以存在于驻地内部或外部。
社区云:云基础设施由几个组织共享,并支持具有共同关注事项(例如使命、安全要求、策略和合规性考量)的特定社区。其可以由该组织或第三方管理,并且可以存在于驻地内部或外部。
公用云:云基础设施提供给广大公众或大型产业集团,并由一个组织拥有,用于销售云服务。
混合云:云基础设施是两个或更多云(私有、社区或公用)的组合,它们是单独的实体,但是通过标准化或专有技术绑定在一起,可以实现数据和应用的可移植性(例如用于实现云之间的负载均衡的云爆发)。
云计算环境面向服务,以无状态、低耦合、模块化和语义互操作性为重点。云计算的核心是包括互连节点网络的基础设施。
本发明公开了云工作负载发放的系统和方法。
虽然描述了云工作负载发放系统和方法的各方面,但本发明可以通过任意数量的不同计算系统、环境和/或配置来实现,所述实施例在下文的示例性系统、装置和方法中进行描述。
在一种实施方式中,本发明提供了一种用于在云中发放工作负载的系统和方法。本发明通过历史数据集获得一种工作负载发放比例因子机制。基于获得的发放比例因子对用于云发放的工作负载概要文件进行自动或手动调整。本发明为用户提供一种界面,用于选择资源的手动或自动调整,从而可根据需要达到期望的或最优的状况。本发明还能够向用户通知所发放的资源以及基于该向用户发放的收费/费用。
在一种实施方式中,一旦云提供商接收到用户负载,本发明基于称作比例因子的参数来检查适当的概要文件。通过识别工作负载的显著特征(接收到的参数),如所需的用户输入容量和预期输出容量来计算比例因子。对于每个完成的工作负载,采用历史数据表方法来计算比例因子并将信息存储在持久存储器中。一旦选择了概要文件,本发明为用户提供选择适当资源的选项。选项可以是手动调整比例因子或比例因子自动调整选项。使用手动选项,用户可以选择提供的比例因子值,或建议一个新的值来发放工作负载。使用自动选项,系统会根据系统为当前工作负载提供的比例因子重新调整资源。一旦选定选项,本发明应用该概要文件并发放工作负载。一旦发放了工作负载,本发明显示已选择的资源或工作负载的分配。此外,本发明可以提供基于标准提供商模型的工作负载发放所涉及的成本。
现参考图1,根据本主题的实施例来说明使用比例因子进行云工作负载发放的工作流程。如图1所示,云提供商或云门户接收工作负载。工作负载可提供用户对参数的最低要求,例如输入或输出。例如,所述输入可以为‘用户数量’,所述输出可以为‘每秒的事务数’。这些参数从提供商界面的门户收集。在接收到工作负载时,本发明的决策引擎将在工作负载中接收的这些参数与已经可用的一组工作负载概要文件进行比较,在后续部分中使用称为‘比例因子’的机制来进行描述。
一旦根据提供的使用参数为工作负载概要文件选择了相关或适当的比例因子,该信息将会提示给用户以进行下一步操作。可以用两个选项来提示用户,用户选择一个以手动调整比例因子,或者另一个以自动执行所选择的比例因子。
当用户选择手动选项时,本发明进一步通过用户选项来选择所需资源,以使用户重新调整比例因子,一旦重新调整,本发明将执行该工作负载概要文件并实现云发放。
如果用户选择自动选项,根据图1右侧的工作流程,本发明选择比例因子并重新调整工作负载资源。在第一步骤中,本发明收集该流程中计算的比例因子作为图1右侧的工作流程“从历史数据中计算比例因子”。第二步,本发明可以按照需要为比例因子重新调整资源。每个比例因子设置与资源需求集合相关联,这些设置应用于可用的资源池。第三步,如果不满足所有比例因子要求,本发明可以将容量重新调整到可能的最大值。最后,本发明可以通知用户上述所做的设置。例如,如图3中表“比例因子——样本估计”所示,若计算出的比例因子为3.5,则为过度发放系统。工作负载只需要所分配资源中的CPU 60和内存80。资源可按需求减少到最佳状态。本发明提供了一种重新调整选项,用于以虚拟机(Virtualmachine,简称VM)中或容器中的标准方式减少所分配资源的CPU要求和内存要求。本领域技术人员可理解下文已知处理过程,因此在本文中不予解释以避免复杂性。
在一种实施方式中,本发明基于接收的工作负载的需要和要求自动重新调整比例因子,并且在重新调整时,本发明执行该工作负载概要文件并实现云发放。
在执行该工作负载概要文件和实现云发放之后,如可能,本发明可通知用户包括报告机制在内的动作。
比例因子创建过程:本发明的比例因子计算是根据历史数据集进行的。根据本发明,当任何工作负载结束(或完成)时,向比例因子计算器通知已完成。计算器用于在完成的工作负载上执行夜间或批处理作业,以从工作负载收集所有相关的日志详情。进一步地,计算器通过日志解析器从历史数据集中提取相关信息。在提取相关信息时,工作负载分类器用于将工作负载分类至可能包括但不限于小任务、长时间运行任务等的适当类别。根据提取的信息,计算器生成比例因子。生成比例因子时,生成的比例因子存储在存储库420中。在一种实施方式中,与比例因子相关联的所有信息,例如资源概要文件(工作负载概要文件)也可以与各个比例因子一同存储在存储库420中。可以使用工作负载概要文件来比较从用户接收的工作负载,并在选择/匹配相应的比例因子时发放工作负载。在一种实施方式中,工作负载可具有相同的性质,并且未来可将工作负载分类到不同的桶。可存在多个的工作负载类别,然后可以为每个类别计算比例因子。
比例因子、比例因子计算和相关细节的示例如下所示。本领域技术人员可以理解,该示例仅用于理解目的,不会以任何方式限制本发明的保护范围。
在步骤1中:至少识别并捕获了以下工作负载的主要参数。
参数 示例 要求
资源 CPU、内存等 CPU 80%
负载 用户/输入 1000用户
容量 输出tps、rps、httpConn等 100tps
在步骤2中:一旦工作负载运行结束,将从日志概要文件中提取数据集并加以处理以进行比例因子计算。该操作后,比例因子会和资源概要文件一起存储在历史DB表中。根据历史数据集进行比例因子估计。在本发明的一种实施方式中,比例因子是采用工作负载的一些关键参数而得出的公式。
例如:
比例因子=1/2(LoadAvg%+CapacityAvg%)/(ResourcesAvg%),
其中
LoadAvg%:在工作负载运行期间预期的输入负载,在该持续时间内得到的平均负载,该数值表示为百分数。
CapacityAvg%:在工作负载运行期间预期的输出负载,在该持续时间内得到的平均负载,该数值表示为百分数。
ResourceAvg%:资源负载,可用于工作负载运行期间,在该持续时间内得到的平均负载,该数值表示为百分数。
例如:比例因子=1/2(80+80)/(Avg(99+95)=0.82。
可以清楚看到,用户负载是预期的80%,如TPS这样的容量也是预期的80%。使用的CPU为99%,使用的内存为95%。目前的系统未满足用户的需要,因此如果要调度此概要文件的工作负载,则必须为该概要文件分配更好的资源。
在步骤3中:当从用户接收到新的工作负载时,输入信息可以提供输入或输出参数或两者皆可。接收到输入信息后,本发明从历史表格中寻找适当或更相关的概要文件,并从中选择相关联的比例因子。
在一种实施方式中,如果比例因子=1,则表示包括用于执行所接收工作负载的资源的历史工作负载概要文件恰好适合于该工作负载运行,如果比例因子<1,则表示较少的资源被分配给所接收工作负载,如果比例因子>1,则表示更多的资源被分配给所述工作负载。
在一种实施方式中,工作负载的关键参数(数据点)可以根据所捕获的所有所需参数的平均数据集来确定,所有数据点以百分比表示,数据集从本发明中存储的日志中捕获,如果日志不够,则添加相应的参数进行捕获。
在一种实施方式中,可根据本发明实施例考虑的资源可以为ResourcesAvg%:
●CPUAvg=在运行期间的平均CPU使用率(以百分比表示)。
●MEMAvg=在运行期间的平均内存使用率(以百分比表示)。
在一种实施方式中,可根据本发明实施例考虑的输入负载可以为:LoadAvg%:系统容纳的典型用户数量与预计运行的用户数量之比(以百分比表示)。如果有多个参数,很大程度取决于可能考虑值的平均值。
在一种实施方式中,可根据本发明实施例考虑的输出容量可以为输出容量:CapacityAvg%:使用的关键参数值与预期使用的关键参数之比(以百分比表示)。如果有多个参数,很大程度取决于可能考虑值的平均值。
在一种实施方式中,本发明还实现了对资源进行分类。进一步地,可以使用附加资源,如磁盘、网络等进行细化。
在一种实施方式中,比例因子还可以取决于除上述少数几个参数之外的其它参数。对于这些其它参数中的每一个,添加附加数据点来微调对工作负载进行分类的本发明。不同的工作负载可能有不同的特性和资源需求。因此,将已完成的工作负载分类为以下三个类别十分重要。进行应用概要分析以将应用按下列类别归类:
●亲和性:必须有亲和性、最好有亲和性、无亲和性
●负载时长:秒、时、周
●作业类型:批量、LRP、不间断、突发事件/缄默期
在一种实施方式中,应用可以根据其中涉及的软件堆栈的类型,如java、ruby、go或QoS等进一步分类。
说明比例因子计算的另一个示例如下:
如果输入了用户,输出了关键值,则
比例因子=1/2(UserAvg%+KeyvalueAvg%)/(Avg(CPUAvg%+MEMAvg%))。
因此:比例因子=1/2(80+80)/(Avg(99+95)=0.82。
如上述示例所示,用户负载为预期的80%,如tps的容量也是预期的期80%。根据本发明,该系统没有满足用户的要求。因此,如果要调度此概要文件的工作负载,则必须为该概要文件分配更好的资源。
现参考图2(a),图2(a)示出了本主题实施例提供的向云门户提供用户工作负载时显示的界面。在一种实施方式中,如图2(a)所示,当提供用户工作负载给云门户时,还提供进入所需应用输入和输出容量的选项。用户可以输入适当的值,然后提交工作负载。为用户提供了从界面上提供的下拉菜单中选择数值的选项。还为用户提供了灵活性,以知晓应当提供的最小一次输入。
现参考图2(b),图2(b)示出了本主题实施例提供的示出一种显示器的界面,该显示器建议了用户工作负载概要文件的比例因子。在一种实施方式中,如图2(b)所示,本发明能够显示该概要文件的建议比例因子。除了显示比例因子之外,本发明还能够向用户显示适当的概要文件。这样很好地表明将要发放什么样的系统。进一步地,如图2(b)所示,本发明使得用户能够选择选项,从而选择手动或是系统自动调整概要文件。如图2(b)所示,如果选择了手动选项,则向用户提供用于编辑屏幕中显示的比例因子的容量,用户可以通过这一容量选择保持相同的数字或选择编辑为不同的数字。提供选项的这一特性提供了巨大的灵活性。如果用户选择用于调整的自动选项,则本发明用于根据显示的比例因子来选择概要文件,并且发放工作负载。
现参考图2(c),图2(c)示出了本主题实施例提供的在工作负载发放后显示通知的界面。在一种实施方式中,如图2(c)所示,一旦工作负载发放,将通知用户工作负载发放成功。图2(c)所示的界面可以根据用户的需要,完成云资源的处理流程和成功发放。在一种实施方式中,发放完成后,可以在界面上显示消息或任何通知所发放的资源以及收费的任何指示。在一种实施方式中,可以在界面上提供电子邮件按钮,能将所发放的资源寄给用户。
现参考图3,图3示出了本主题实施例提供的比例因子——样本估计。如图3所示,本发明可以根据提供的作为接收的输入工作负载和历史数据集的关键参数来提供比例因子。如图3所示,从用户接收的工作负载包括容量,和作为参数的资源,用于与历史数据集进行比较,相关的比例因子也在本发明中予以提供。一旦本发明提供了比例因子,用户就可以灵活地重新调整比例因子,并且根据要求发放工作负载。
现参考图4,图4示出了本主题实施例提供的云工作负载发放系统。虽然是就本发明作为系统400来实现来解释本主题,但可以理解的是,系统400还可以在各种计算系统中实现,例如手提电脑、台式计算机、笔记本电脑、工作站、大型计算机、服务器、网络服务器等。应当理解,系统400可以被驻留在系统400上的多个用户或应用访问。系统400的示例可以包括但不限于便携式计算机(计算机系统)、个人数字助理、手持设备、传感器、路由器、网关和工作站。系统400通信地耦合到其它设备、节点、装置以形成网络(未示出)。
在一种实施方式中,所述网络(未示出)可以是无线网络、有线网络或其组合。所述网络可作为不同类型的网络之一实现,例如GSM、CDMA、LTE、UMTS、内联网、局域网(localarea network,简称LAN)、广域网(wide area network,简称WAN)、互联网等。所述网络可以是专用网络或共享网络。共享网络表示使用各种协议如超文本传输协议(HypertextTransfer Protocol,简称HTTP)、传输控制协议/互联网协议(Transmission ControlProtocol/Internet Protocol,简称TCP/IP)、无线应用协议(Wireless ApplicationProtocol,简称WAP)等相互通信的不同类型网络的关联。进一步地,所述网络可包括各种网络设备,包括路由器、网桥、服务器、计算设备、存储设备等。
根据本主题实施例所示的系统400可包括处理器402、接口404和存储器406。处理器402可作为一个或多个微处理器、微计算机、微控制器、数字信号处理器、中央处理器、状态机、逻辑电路和/或基于操作指令来操纵信号的任何设备来实现。在其它能力中,所述至少一个处理器用于获取和执行存储器中存储的计算机可读指令或模块。
所述接口(I/O接口)404可以包括各种软件和硬件接口,例如web接口、图形用户接口等。所述I/O接口可以允许系统400与用户直接交互。进一步地,所述I/O接口可以使系统400能够与其它设备或节点,以及web服务器和外部数据服务器(未示出)等计算设备进行通信。I/O接口可促进各种网络和协议类型中的多种通信,包括GSM、CDMA、LAN、电缆等有线网络,以及WLAN、蜂窝或卫星等无线网络。I/O接口可包括用于将多个设备彼此连接或连接到另一个服务器的一个或多个端口。I/O接口可以通过为接口提供的屏幕来提供用户和系统400之间的交互。
存储器406可以包括本领域已知的任何计算机可读介质,包括例如易失性存储器,如静态随机存取存储器(static random access memory,简称SRAM)和动态随机存取存储器(dynamic random access memory,简称DRAM),和/或非易失性存储器,如只读存储器(read only memory,简称ROM)、可擦除可编程ROM、闪存、硬盘、光盘和磁带。存储器可以包括用于执行各种功能的多个指令、模块或应用。存储器包括例程、程序、对象、组件以及数据结构等,其执行特定任务或实现特定抽象数据类型。
在一种实施方式中,公开了一种联网计算环境下的云工作负载发放系统400。所述系统400包括处理器402和耦合到处理器402的存储器406,用于执行存在于存储器中的多个模块。所述多个模块包括接收模块408、引擎412、重调整模块414和工作负载发放模块416。所述接收模块408用于接收至少一个云工作负载发放请求。所述引擎412用于通过历史数据集的至少一个工作负载概要文件获得所述接收的云工作负载发放请求的工作负载发放比例因子。所述重调整模块414用于自动或手动重新调整所述工作负载发放比例因子。所述工作负载发放模块416用于根据所述重新调整的工作负载发放比例因子发放所述云工作负载。
在一种实施方式中,所述系统400还包括:识别模块410,可用于识别至少一个与云工作负载发放请求相关联的参数,所述参数优选地,当依据访问工作负载的用户数量时,从工作负载所需的输入容量中选择,或者当依据每秒对于访问的响应时,从工作负载的预期输出容量中选择,或从其任意组合中选择。
在一种实施方式中,所述系统400可包括:识别模块410,可用于识别至少一个与云工作负载发放请求相关联的参数,该参数优选地从资源、负载、容量、亲和性、负载分布、作业类型、或其任意组合中选择。
在一种实施方式中,要获得所述工作负载发放比例因子,所述引擎412还可用于将与云工作负载发放请求相关联的参数与预存储在历史数据集的工作负载概要文件中的至少一个历史工作负载参数进行匹配,从而:若发现匹配,获得所述工作负载发放比例因子。
在一种实施方式中,所述历史数据集的工作负载概要文件基于历史云工作负载发放请求而创建。
在一种实施方式中,要计算所述工作负载发放比例因子,所述引擎412还用于:收集至少一项与所述历史云工作负载发放请求相关联的作业详情;通过日志解析器提取与所述历史云工作负载发放请求相关联的相关信息;通过工作负载分类器对所述历史云工作负载发放请求进行分类;通过可定制等式来计算工作负载发放比例因子。在一种实施方式中,本领域技术人员可以理解,作业详情或工作负载概要文件包括与工作相关联的所有统计信息:CPU使用率平均值和最大值,内存使用率平均值和最大值,磁盘、网络等其它硬件资源平均值和最大值,在峰值时间和平均时间内登录用户的输入详细信息,输出详细信息如TPS/RPS平均值和最大值,工作负载运行的持续时间等。这些信息用于计算上一节中的公式所示的比例因子。
在一种实施方式中,所述工作负载发放比例因子提供至少一个与所述针对云工作负载发放请求进行发放的资源相关联的值。从这个意义上看,比例因子可仅使用比例因子公式中所述的输入负载、输出负载、CPU和内存详情。所有其它工作负载或作业详情也可用于在将来增强比例因子的有效性。
在一种实施方式中,本发明提供了一种联网计算环境下的云工作负载发放系统400。所述系统包括处理器402和耦合到处理器402的存储器406,用于执行存在于存储器406中的多个模块。所述多个模块包括接收模块408、识别模块410、引擎412和工作负载发放模块416。所述接收模块408用于在联网计算环境的计算机数据结构中接收至少一个云工作负载发放的云工作负载发放请求。所述识别模块410用于识别至少一个与接收的云工作负载发放请求相关联的参数。所述引擎412用于根据识别的参数和至少一个预存储的工作负载概要文件,获得所述接收的云工作负载发放请求的工作负载发放比例因子。所述工作负载发放模块416用于根据所述确定的比例因子发放所述云工作负载。
在一种实施方式中,所述工作负载发放比例因子指示至少一个为所述云工作负载发放请求发放的资源值。
在一种实施方式中,所述系统400还包括重调整模块414,用于自动或手动重新调整所述得到的工作负载发放比例因子。手动重新调整时,所述重调整模块414用于手动接收至少一个为所述云工作负载发放请求发放的资源的资源值。自动重新调整时,所述重调整模块414用于:至少检索与所述获得的工作负载发放比例因子相关联的预存储工作负载概要文件;至少自动重新调整从预存储的工作负载概要文件中选择的用于发放的资源;重新调整预存储的工作负载概要文件中资源的容量订购。
在一种实施方式中,所述系统400还包括通知模块418,用于通知至少一个用户所发放的资源,或发放中涉及的成本,或其任意组合。
在一种实施方式中,所述参数优选地,当依据访问工作负载的用户数量时,从工作负载所需的输入容量中选择,或者当依据每秒对于访问的响应时,从工作负载的预期输出容量中选择,或从其任意组合中选择。
在一种实施方式中,所述参数优选地从资源、负载、容量、亲和性、负载分布、作业类型、或其任意组合中选择。
在一种实施方式中,要获得所述工作负载发放比例因子,所述引擎412还可用于将与云工作负载发放请求相关联的参数与预存储在历史数据集的工作负载概要文件中的至少一个历史工作负载参数进行匹配,从而:若发现匹配,获得所述工作负载发放比例因子。
在一种实施方式中,所述历史数据集的工作负载概要文件基于历史云工作负载发放请求而创建。
在一种实施方式中,要计算所述工作负载发放比例因子,所述引擎412还用于:收集至少一项与所述历史云工作负载发放请求相关联的作业详情;通过日志解析器提取与所述历史云工作负载发放请求相关联的相关信息;通过工作负载分类器对所述历史云工作负载发放请求进行分类;通过可定制等式来计算工作负载发放比例因子。
在一种实施方式中,所述工作负载发放比例因子提供至少一个与所述针对云工作负载发放请求进行发放的资源相关联的值。
在一种实施方式中,公开了一种用于根据历史数据在云环境下分配工作负载的云工作负载发放系统400。所述系统包括数据库420,该数据库包括历史工作负载概要文件的历史数据表中的历史数据的存储库420;引擎412,用于:搜索历史数据的存储库420,以选择至少一个基于接收的云工作负载概要文件发放请求的历史工作负载概要文件;通过历史工作负载概要文件获得接收的云工作负载概要文件发放请求的工作负载发放比例因子;自动或手动重新调整云工作负载概要文件发放请求的工作负载发放比例因子,从而根据工作负载发放比例因子发放云工作负载。
图5示出了本主题实施例提供的云工作负载发放方法。所述方法可在计算机可执行指令的广义语境中描述。通常,计算机可执行指令可以包括例程、程序、对象、组件、数据结构、流程、模块和功能,可执行特定功能或者实现特定抽象数据类型。所述方法还可以在分布式计算环境中实施,其中功能由通过通信网络链接的远程处理设备执行。在分布式计算环境中,计算机可执行指令可以位于本地和远程计算机存储介质中,包括存储器存储设备。
所述方法描述的顺序不应被理解为一种限制,任意数量的所描述的方法步骤可以任何顺序组合来实现该方法或替代方法。此外,单独的步骤可从方法删除而不脱离本文所描述的主题的保护范围。此外,所述方法可在任何适当的硬件、软件、固件或其组合中实现。但为了便于说明,在下述实施例中,该方法可以被认为在上述系统400中实现。
在一种实施方式中,公开了一种云工作负载发放方法。
框502中,接收了至少一个云工作负载发放请求。所述接收的请求可包括至少一个与所述云工作负载发放请求相关联的参数,所述参数优选地,当依据访问工作负载的用户数量时,从工作负载所需的输入容量中选择,或者当依据每秒对于访问的响应时,从工作负载的预期输出容量中选择,或从资源、负载、容量、亲和性、负载分布、作业类型、或其任意组合中选择。
框506中,为所述接收的云工作负载发放请求获得了工作负载发放比例因子。所述工作负载发放比例因子采用历史数据集的至少一个工作负载概要文件获得。所述工作负载发放比例因子通过以下步骤获得:将与云工作负载发放请求相关联的参数与预存储在历史数据集的工作负载概要文件中的至少一个历史工作负载参数进行匹配,从而:若发现匹配,获得所述工作负载发放比例因子。历史数据集的工作负载概要文件基于历史云工作负载发放请求而创建。
在一种实施方式中,所述工作负载发放比例因子通过以下步骤计算:收集至少一项与所述历史云工作负载发放请求相关联的作业详情;通过日志解析器提取与所述历史云工作负载发放请求相关联的相关信息;通过工作负载分类器对所述历史云工作负载发放请求进行分类;通过可定制等式来计算工作负载发放比例因子。所述工作负载发放比例因子提供至少一个与所述针对云工作负载发放请求进行发放的资源相关联的值。在一种实施方式中,可生成独特的公式,并实施可能的最好方式。此处提及了一个新的公式。该理念是根据需要为提供的作业重新调整云资源。如果比例因子不采用公式,可以实现资源调整,但是非常一般化。因此,使用比例因子会更加系统化且自动化。如果不使用公式,则可能无法实现自动调整,但是可以实现如用户界面所示的手动设置。
框508中,重新调整了工作负载发放比例因子。所述比例因子可以自动或手动重新调整。
框512中,重新调整了采用工作负载发放比例因子进行发放的云工作负载。
在一种实施方式中,公开了一种云工作负载发放方法。
框502中,接收了至少一个云工作负载发放的云工作负载发放请求。云工作负载发放请求在联网计算环境下计算机数据结构中接收。
框504中,识别了至少一个与所接收的云工作负载发放请求相关联的参数。所述参数优选地,当依据访问工作负载的用户数量时,从工作负载所需的输入容量中选择,或者当依据每秒对于访问的响应时,从工作负载的预期输出容量中选择,或从资源、负载、容量、亲和性、负载分布、作业类型、或其任意组合中选择。
框506中,基于识别的参数和至少一个预存储的工作负载概要文件,获得用于所述接收的云工作负载发放请求的工作负载发放比例因子。所述工作负载发放比例因子指示至少一个为所述云工作负载发放请求发放的资源值。所述工作负载发放比例因子采用历史数据集的预存储工作负载概要文件获得。所述工作负载发放比例因子通过以下步骤获得:将与云工作负载发放请求相关联的参数与预存储在历史数据集的工作负载概要文件中的至少一个历史工作负载参数进行匹配,从而:若发现匹配,获得所述工作负载发放比例因子。历史数据集的工作负载概要文件基于历史云工作负载发放请求而创建。
在一种实施方式中,所述工作负载发放比例因子通过以下步骤计算:收集至少一项与所述历史云工作负载发放请求相关联的作业详情;通过日志解析器提取与所述历史云工作负载发放请求相关联的相关信息;通过工作负载分类器对所述历史云工作负载发放请求进行分类;通过可定制等式来计算工作负载发放比例因子。所述工作负载发放比例因子提供至少一个与所述针对云工作负载发放请求进行发放的资源相关联的值。
框512中,重新调整了采用工作负载发放比例因子进行发放的云工作负载。
在一种实施方式中,在获得所述工作负载发放比例因子后,在该方法的步骤508中,重新调整了获得的工作负载发放比例因子。所述比例因子可以自动或手动重新调整。通过手动接收为所述云工作负载发放请求发放的资源的至少一个资源值,手动重新调整获得的工作负载发放比例因子。所述获得的工作负载发放比例因子通过以下步骤自动重新调整:至少检索与所述获得的工作负载发放比例因子相关联的预存储工作负载概要文件;至少自动重新调整从预存储的工作负载概要文件中选择的用于发放的资源;重新调整预存储的工作负载概要文件中资源的容量订购。
在一种实施方式中,在重新调整所述工作负载发放比例因子后,在该方法的步骤510中,通知用户所发放的资源或发放中涉及的成本。
在一种实施方式中,公开了一种云工作负载发放方法。所述方法包括:接收至少一个云工作负载概要文件发放请求;将所述接收的云工作负载概要文件发放请求与多个历史工作负载概要文件进行比较;通过所述历史工作负载概要文件,获得所述接收的云工作负载概要文件发放请求的工作负载发放比例因子;自动或手动重新调整所述云工作负载概要文件发放请求的工作负载发放比例因子,从而根据所述工作负载发放比例因子发放云工作负载。在一种实施方式中,根据所述比例因子为工作负载调整和创建资源。但是,如果比例因子需要的资源不可用,则可以重新调整本发明以提供可能的最大值。例如,如果内存要求是16GB,但系统最多只能提供14GB,则此步骤中会提供所需的值。如果无此步骤,则自动设置失败,这一失败不符本意。
现参考图6,根据本主题的实施例示出了联网计算环境600下的云工作负载发放系统400。如图6所示,图6示出了云计算节点示例的示意图。云计算节点仅是合适的云计算节点的一个示例,并不意图暗示对本文所述的本发明实施例的使用或功能范围的任何限制。无论如何,云计算节点能够被实现和/或执行上文所阐述的任何功能。
在云计算节点中可能有一个计算机系统/服务器/系统400,可与许多其它通用或专用计算系统环境或配置配合使用。可适用于计算机系统/服务器400的已知计算系统、环境和/或配置的示例包括但不限于个人计算机系统,服务器计算机系统、瘦客户端,胖客户端、手持式或笔记本电脑设备、多处理器系统,基于微处理器的系统、机顶盒、可编程消费电子产品、网络PC、小型计算机系统、大型计算机系统以及包括上述任意系统或设备的分布式云计算环境等。
计算机系统/服务器400可以以计算机系统可执行指令,如程序模块为一般语境进行描述,由计算机系统执行。一般而言,程序模块可包括例程、程序、对象、组件、逻辑以及数据结构等,其执行特定任务或实现特定抽象数据类型。计算机系统/服务器400可以在分布式云计算环境中实施,其中任务由通过通信网络链接的远程处理设备执行。在分布式云计算环境中,程序模块可以位于本地和远程计算机系统存储介质中,包括存储器存储设备。
如图6所示,图6以通用计算设备的形式示出了云计算节点中的计算机系统/服务器400。计算机系统/服务器400的组件可包括但不限于一个或多个处理器或处理单元402、系统存储器406和总线/接口404,该总线/接口406将包括系统存储器406的各种系统组件耦合到处理器402。
总线表示几种类型的总线结构中的一种或多种,包括存储器总线或存储器控制器、外围总线、加速图形端口、以及使用任意总线架构的处理器或局部总线。作为示例而非限制,这种架构包括工业标准架构(Industry Standard Architecture,简称ISA)总线、微通道架构(Micro Channel Architecture,简称MCA)总线、增强型ISA(Enhanced ISA,简称EISA)总线、视频电子标准协会(Video Electronics Standards Association,简称VESA)局部总线和外围部件互连(Peripheral Component Interconnects,简称PCI)总线。
计算机系统/服务器400一般包括各种计算机系统可读介质。此介质可以是可由计算机系统/服务器访问的任何可用介质,并且其包括易失性和非易失性介质、可移动和不可移动介质。
系统存储器406可包括如随机存取存储器(random access memory,简称RAM)和/或超速缓存存储器等易失性存储器形式的计算机系统可读介质。计算机系统/服务器400还可以包括其它可移动/不可移动的易失性/非易失性计算机系统存储介质。仅作为示例,可以提供存储系统,用来对不可移动非易失性磁介质(未示出,通常称为“硬盘驱动器”)进行读取和写入。虽然未示出,但可以提供用于对可移动非易失性磁盘(例如“软盘”)进行读取和写入的磁盘驱动器,以及用于对可移动非易失性光盘,如CD-ROM、DVD-ROM或其它光介质进行读取或写入的光盘驱动器。在此类例子中,每个介质可以通过一个或多个数据媒体接口连接到总线。如在下面进一步描述和介绍的,存储器可包括至少一个具有一组(例如至少一个)程序模块的程序产品,该程序模块用于执行本发明实施例的功能。
本发明实施例可作为计算机可读信号介质实现,可以包括带有其中体现的计算机可读程序代码(例如在基带中或作为载波的一部分)的传播数据信号。这种传播信号可具有各种形式,包括但不限于电磁、光学或任意合适的组合。计算机可读信号介质可以为非计算机可读存储介质的任意计算机可读介质,且该计算机可读介质可以通信、传播或传送程序以供由指令执行系统、装置或设备使用或与其连接。
体现在计算机可读介质上的程序代码可以使用任意合适的介质,包括但不限于无线、有线、光纤电缆、射频(radio-frequency,简称RF)等,或前述任意合适的组合来发送。
作为示例而非限制,具有一组(至少一个)程序模块的程序/实用程序,以及操作系统、一个或多个应用程序、其它程序模块和程序数据可以存储在存储器中。各个操作系统、一个或多个应用程序、其它程序模块和程序数据或其某些组合可以包括组网环境的实现。程序模块通常执行如本文所述的本发明实施例的功能和/或方法。
计算机系统/服务器400还可以与如键盘、定点设备、显示器等的一个或多个外部设备进行通信;能使用户能够与计算机系统/服务器交互的一个或多个设备;和/或能使计算机系统/服务器与一个或多个其它计算设备通信的任何设备(例如网卡、调制解调器等)。此类通信可以通过I/O接口进行。进一步地,计算机系统/服务器可以经由网络适配器与一个或多个网络,例如局域网(local area network,简称LAN)、通用广域网(wide areanetwork,简称WAN)和/或公共网络(例如因特网)进行通信。应当理解,尽管未示出,但其它硬件和/或软件组件也可以与计算机系统/服务器结合使用。示例包括但不限于:微代码、设备驱动程序、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器和数据归档存储系统等。
如图6所示,描述了一种云计算环境600。如图所示,云计算环境600包括一个或多个云计算节点400,云用户使用的本地计算设备602-1,602-2……602-n(以下称为602),例如个人数字助理(personal digital assistant,简称PDA)或蜂窝电话、台式计算机、手提电脑和/或车载计算机系统可利用这些节点进行通信。节点间可以相互通信。它们可以物理或虚拟地分组(未示出)在一个或多个网络中,例如如上所述的私有、社区、公用或混合云,或其组合。这允许云计算环境600提供基础设施、平台和/或软件作为服务,而云用户无需在本地计算设备上维护资源。应当理解,图6所示的计算设备602的类型仅仅是说明性的,且计算节点400和云计算环境可以通过任何类型的网络和/或网络可寻址连接(例如使用web浏览器)与任何类型的计算设备通信。
重申一下,虽然本发明包括云计算的详细描述,但此处所述的理念的实现不限于云计算环境。相反,本发明实施例旨在用现已知或后期开发的任何类型的联网计算环境来实现。
除了上述之外,本发明还包括以下优点:
√本发明为用户发放云工作负载提供了方便:工作负载概要文件的手动和自动调整使用户可以轻松根据需要部署工作负载。简单的GUI提供了工作负载概要文件选择。此外,将通知用户选择的资源以及与之相关联的收费/费用。
√本发明与所有的现有云发放机制兼容:本发明提供了一种更好的具有工作负载概要文件已知特征的资源调度。基于比例因子参数的资源选择可以被输入到任何调度机制来进行发放。
√由于不需要收集实时数据进行分析,而要求采用历史数据来生成“比例因子”参数以最佳地发放云工作负载,整个过程十分易懂且易执行。
√本发明提供了批量作业中创建比例因子的灵活性。当系统在夜间使用较少时,可以在批量作业过程中生成工作负载的比例因子。因此没有负载影响。
√本发明能够上报和更好地利用数据中心资源:工作负载概要文件的大规模历史数据和“基于比例因子的最优比例因子”调度信息存储在历史记录中。这为数据中心管理员提供了巨大的价值,用于模式识别和分析数据中心使用率,从而重新调整其资源池。
√本发明帮助用户根据自动引导机制选择云发放工作负载概要文件。
√本发明根据采用历史数据集的资源需求来发放云应用。
√本发明能够提供每个应用的比例因子,比例因子可以使用先前类似的工作负载运行的历史数据轻易得到,因此,不需要在系统中持续运行特殊代理,且不会观察到对性能或安全性的影响。
√本发明提供了一种系统,能够向用户提供对要发放的工作负载的自动引导。根据各种历史数据集匹配用户的工作负载概要文件,便于用户为各类工作负载选择云发放。
√如果用户愿意,本发明能够在云发放过程中自动重新调整工作负载概要文件。同时也提供了手动选择。
本领域普通技术人员可以理解,可使用用于实现本发明的任何已知或新的算法。然而,应当说明的是,本发明提供了一种在备份操作期间用于实现上述益处和技术进步的方法,而未使用任何已知或新的算法。
本领域普通技术人员能够认识到,结合本说明书所公开的实施例中所描述的示例,可通过电子硬件或计算机软件与电子硬件的组合来实施单元和算法步骤。功能是由硬件还是由软件执行取决于技术方案的特定应用和设计约束条件。本领域技术人员可使用不同方法实现每个特定应用的所描述功能,但是不应认为该实现超出本发明的范围。
本领域技术人员可清楚地理解,出于方便和简单描述的目的,对于前述系统、装置和单元的详细工作过程,可参考前述方法实施例中的对应过程,本文中不再描述细节。
在本应用中提供若干实施例中,应理解,所公开的系统、装置和方法可通过其它方式实现。例如,所描述的装置实施例仅仅是示例性的。例如,单元划分仅仅是逻辑功能划分且在实际实现中可以是其它划分。例如,可将多个单元或部件合并或集成到另一系统中,或可忽略或不执行部分特征。另外,可通过一些接口实现所显示或论述的互相耦合或直接耦合或通信连接。装置或单元之间的间接耦合或通信连接可通过电子、机械或其它形式实现。
当这些功能以软件功能单元的形式实现以及作为单独产品销售或使用时它们可存储在计算机可读存储介质中。基于这种理解本发明的技术方案基本上或构成现有技术的部分或技术方案的部分可通过软件产品的形式实现。计算机软件产品存储在存储介质中并包括若干指令,用于指示计算机设备(其可为为个人计算机、服务器或网络设备)执行本发明实施例中所描述的方法的所有或部分步骤。上述存储介质包括:可以存储程序代码的任何媒体,例如USB盘、可移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁盘或光学光盘。
虽然已经以结构特征和/或方法特有的语言描述了云工作负载发放系统和方法的实施方式,但是应当理解,所附权利要求不一定限于所描述的特定特征或方法。相反,公开的具体特征和方法作为实现云工作负载发放系统和方法的示例。

Claims (7)

1.一种云工作负载发放方法,其特征在于,所述方法包括:
在联网计算环境的计算机数据结构中接收至少一个云工作负载发放的云工作负载发放请求;
识别至少一个与接收的云工作负载发放请求相关联的参数;当所述云工作负载基于访问工作负载的用户数量的情况下,所述参数从工作负载所需的输入容量中选择;当所述云工作负载基于每秒对于访问的响应的情况下,所述参数从工作负载的预期输出容量中选择;或从资源、负载、容量、亲和性、负载分布、作业类型、或其任意组合中选择;
根据识别的参数和至少一个预存储工作负载概要文件,获得所述接收的云工作负载发放请求的工作负载发放比例因子;
根据所述确定的比例因子发放云工作负载,
所述工作负载发放比例因子通过以下步骤确定:
收集至少一项与历史云工作负载发放请求相关联的作业详情;通过日志解析器从所述作业详情中提取与所述历史云工作负载发放请求相关联的相关信息;其中,在提取与所述历史云工作负载发放请求相关联的相关信息时,通过工作负载分类器对所述历史云工作负载发放请求进行分类;根据所述提取的相关信息,通过可定制等式来计算工作负载发放比例因子。
2.根据权利要求1所述的方法,所述工作负载发放比例因子指示至少一个为所述云工作负载发放请求发放的资源值。
3.根据权利要求1所述的方法,其特征在于,还包括:自动或手动重新调整所述获得的工作负载发放比例因子。
4.一种联网计算环境下的云工作负载发放系统,其特征在于,所述系统包括:
处理器;
耦合到处理器的存储器,用于执行存在于存储器中的多个模块,所述多个模块包括:
接收模块,用于在联网计算环境的计算机数据结构中接收至少一个云工作负载发放的云工作负载发放请求;
识别模块,用于识别至少一个与接收的云工作负载发放请求相关联的参数;当所述云工作负载基于访问工作负载的用户数量的情况下,所述参数从工作负载所需的输入容量中选择;当所述云工作负载基于每秒对于访问的响应的情况下,所述参数从工作负载的预期输出容量中选择;
引擎,用于根据识别的参数和至少一个预存储的工作负载概要文件,获得所述接收的云工作负载发放请求的工作负载发放比例因子;其中,所述工作负载发放比例因子通过以下步骤确定:收集至少一项与历史云工作负载发放请求相关联的作业详情;通过日志解析器从所述作业详情中提取与所述历史云工作负载发放请求相关联的相关信息;其中,在提取与所述历史云工作负载发放请求相关联的相关信息时,通过工作负载分类器对所述历史云工作负载发放请求进行分类;根据所述提取的相关信息,通过可定制等式来计算工作负载发放比例因子;
工作负载发放模块,用于根据所述确定的比例因子发放所述云工作负载。
5.根据权利要求4所述的系统,所述工作负载发放比例因子指示至少一个为所述云工作负载发放请求发放的资源值。
6.根据权利要求4所述的系统,其特征在于,还包括重调整模块,用于自动或手动重新调整所述获得的工作负载发放比例因子。
7.根据权利要求4所述的系统,所述工作负载概要文件基于历史云工作负载发放请求而创建。
CN201780007135.2A 2016-01-18 2017-01-14 云工作负载发放系统和方法 Active CN108496324B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IN201641001682 2016-01-18
IN201641001682 2016-01-18
PCT/CN2017/071191 WO2017124981A1 (en) 2016-01-18 2017-01-14 System and method for cloud workload provisioning

Publications (2)

Publication Number Publication Date
CN108496324A CN108496324A (zh) 2018-09-04
CN108496324B true CN108496324B (zh) 2021-08-20

Family

ID=59361483

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780007135.2A Active CN108496324B (zh) 2016-01-18 2017-01-14 云工作负载发放系统和方法

Country Status (4)

Country Link
US (1) US11579936B2 (zh)
EP (3) EP3842943A1 (zh)
CN (1) CN108496324B (zh)
WO (1) WO2017124981A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019031783A1 (en) * 2017-08-09 2019-02-14 Samsung Electronics Co., Ltd. ON-DEMAND FUNCTION SUPPLY SYSTEM (FAAS), AND METHOD OF OPERATING THE SYSTEM
US10942780B1 (en) * 2018-05-21 2021-03-09 Twitter, Inc. Resource use and operational load of performing computing and storage tasks in distributed systems
US10956221B2 (en) 2018-11-26 2021-03-23 International Business Machines Corporation Estimating resource requests for workloads to offload to host systems in a computing environment
US10841369B2 (en) 2018-11-26 2020-11-17 International Business Machines Corporation Determining allocatable host system resources to remove from a cluster and return to a host service provider
US10877814B2 (en) 2018-11-26 2020-12-29 International Business Machines Corporation Profiling workloads in host systems allocated to a cluster to determine adjustments to allocation of host systems to the cluster
US11221887B2 (en) 2019-03-22 2022-01-11 Amazon Technologies, Inc. Bin-packing virtual machine workloads using forecasted capacity usage
US11243794B2 (en) 2019-03-22 2022-02-08 Amazon Technologies, Inc. Interactive GUI for bin-packing virtual machine workloads based on predicted availability of compute instances and scheduled use of the compute instances
US11249810B2 (en) * 2019-03-22 2022-02-15 Amazon Technologies, Inc. Coordinated predictive autoscaling of virtualized resource groups
US11128699B1 (en) * 2019-06-27 2021-09-21 Amazon Technologies, Inc. Predictive load balancer capacity scaling
US10958521B2 (en) * 2019-07-19 2021-03-23 Oracle International Corporation Method and apparatus for configuring a cloud storage software appliance
US11057315B1 (en) * 2020-01-06 2021-07-06 International Business Machines Corporation Generating a scaling plan for external systems during cloud tenant onboarding/offboarding
US11467879B2 (en) * 2020-01-20 2022-10-11 Oracle International Corporation Techniques for implementing rollback of infrastructure changes in a cloud infrastructure orchestration service
US11755337B2 (en) 2020-01-20 2023-09-12 Oracle International Corporation Techniques for managing dependencies of an orchestration service
US20240104054A1 (en) * 2022-09-22 2024-03-28 Docusign, Inc. Smart content load
CN115766474B (zh) * 2022-10-31 2024-04-26 南方电网数字平台科技(广东)有限公司 一种适用于云平台运营的虚拟资源生命周期管理的方法
US11928513B1 (en) 2022-12-28 2024-03-12 International Business Machines Corporation Cloud affinity based on evaluation of static and dynamic workload characteristics

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015708B2 (en) * 2011-07-28 2015-04-21 International Business Machines Corporation System for improving the performance of high performance computing applications on cloud using integrated load balancing

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5408663A (en) * 1993-11-05 1995-04-18 Adrem Technologies, Inc. Resource allocation methods
US6011918A (en) * 1998-04-22 2000-01-04 International Business Machines Corporation Methods, systems and computer program products for generating client/server applications
US6877035B2 (en) 2001-01-29 2005-04-05 International Business Machines Corporation System for optimal resource allocation and planning for hosting computing services
US7474668B2 (en) * 2002-06-04 2009-01-06 Alcatel-Lucent Usa Inc. Flexible multilevel output traffic control
US7039559B2 (en) 2003-03-10 2006-05-02 International Business Machines Corporation Methods and apparatus for performing adaptive and robust prediction
US20040186907A1 (en) * 2003-03-17 2004-09-23 Wentink Maarten Menzo Technique for optimizing backoff for a shared resource
US20050125213A1 (en) 2003-12-04 2005-06-09 Yin Chen Apparatus, system, and method for modeling and analyzing a plurality of computing workloads
US7266540B2 (en) 2004-03-04 2007-09-04 International Business Machines Corporation Mechanism for dynamic workload rebalancing in a multi-nodal computer system
US7552208B2 (en) 2005-01-18 2009-06-23 Microsoft Corporation Methods for managing capacity
US7644148B2 (en) * 2005-05-16 2010-01-05 Hewlett-Packard Development Company, L.P. Historical data based workload allocation
US8336054B2 (en) * 2006-07-20 2012-12-18 Hewlett-Packard Development Company, L. P. System and method for allocating capacity of shared resources to a workload
US20070250837A1 (en) * 2006-04-24 2007-10-25 Herington Daniel E System and method for adjusting multiple resources across multiple workloads
US8104041B2 (en) * 2006-04-24 2012-01-24 Hewlett-Packard Development Company, L.P. Computer workload redistribution based on prediction from analysis of local resource utilization chronology data
US8612987B2 (en) * 2007-01-15 2013-12-17 International Business Machines Corporation Prediction-based resource matching for grid environments
US8055485B2 (en) 2007-01-29 2011-11-08 International Business Machines Corporation Prediction of trends based on history values of an observable
US8380880B2 (en) * 2007-02-02 2013-02-19 The Mathworks, Inc. Scalable architecture
WO2009026703A1 (en) * 2007-08-31 2009-03-05 Cirba Inc. Method and system for evaluating virtualized environments
US8291416B2 (en) * 2009-04-17 2012-10-16 Citrix Systems, Inc. Methods and systems for using a plurality of historical metrics to select a physical host for virtual machine execution
US9396042B2 (en) * 2009-04-17 2016-07-19 Citrix Systems, Inc. Methods and systems for evaluating historical metrics in selecting a physical host for execution of a virtual machine
US8271818B2 (en) 2009-04-30 2012-09-18 Hewlett-Packard Development Company, L.P. Managing under-utilized resources in a computer
EP2425341B1 (en) * 2009-05-01 2018-07-11 Citrix Systems, Inc. Systems and methods for establishing a cloud bridge between virtual storage resources
US8750803B2 (en) * 2009-06-17 2014-06-10 Nokia Corporation Interference cancellation for predictive signals
US10049335B1 (en) * 2009-10-06 2018-08-14 EMC IP Holding Company LLC Infrastructure correlation engine and related methods
US8490087B2 (en) * 2009-12-02 2013-07-16 International Business Machines Corporation System and method for transforming legacy desktop environments to a virtualized desktop model
US9009294B2 (en) * 2009-12-11 2015-04-14 International Business Machines Corporation Dynamic provisioning of resources within a cloud computing environment
US8364997B2 (en) * 2009-12-22 2013-01-29 Intel Corporation Virtual-CPU based frequency and voltage scaling
US8959217B2 (en) 2010-01-15 2015-02-17 Joyent, Inc. Managing workloads and hardware resources in a cloud resource
US8504689B2 (en) * 2010-05-28 2013-08-06 Red Hat, Inc. Methods and systems for cloud deployment analysis featuring relative cloud resource importance
US8478845B2 (en) * 2010-08-16 2013-07-02 International Business Machines Corporation End-to-end provisioning of storage clouds
US20120079500A1 (en) * 2010-09-29 2012-03-29 International Business Machines Corporation Processor usage accounting using work-rate measurements
US8788654B2 (en) * 2010-12-07 2014-07-22 Cisco Technology, Inc. System and method for allocating resources based on events in a network environment
MY178111A (en) 2010-12-22 2020-10-05 Mimos Berhad Intelligent load handling in cloid infrastructure using trend analysis
US10491662B2 (en) * 2011-01-27 2019-11-26 Computenext, Inc. Dynamically organizing cloud computing resources to facilitate discovery
US20120203820A1 (en) 2011-02-03 2012-08-09 International Business Machines Corporation Predicting workload by per look based data
US10678602B2 (en) * 2011-02-09 2020-06-09 Cisco Technology, Inc. Apparatus, systems and methods for dynamic adaptive metrics based application deployment on distributed infrastructures
JP5843459B2 (ja) * 2011-03-30 2016-01-13 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理システム、情報処理装置、スケーリング方法、プログラムおよび記録媒体
US20120265881A1 (en) * 2011-04-14 2012-10-18 Yuan Chen Provisioning data center resources
US9158590B2 (en) * 2011-08-08 2015-10-13 International Business Machines Corporation Dynamically acquiring computing resources in a networked computing environment
US9329904B2 (en) * 2011-10-04 2016-05-03 Tier 3, Inc. Predictive two-dimensional autoscaling
US20130138798A1 (en) * 2011-11-29 2013-05-30 International Business Machines Corporation Predictive and dynamic resource provisioning with tenancy matching of health metrics in cloud systems
US8756609B2 (en) * 2011-12-30 2014-06-17 International Business Machines Corporation Dynamically scaling multi-tier applications vertically and horizontally in a cloud environment
US8732291B2 (en) * 2012-01-13 2014-05-20 Accenture Global Services Limited Performance interference model for managing consolidated workloads in QOS-aware clouds
US20130185729A1 (en) * 2012-01-13 2013-07-18 Rutgers, The State University Of New Jersey Accelerating resource allocation in virtualized environments using workload classes and/or workload signatures
US9092265B2 (en) * 2012-02-26 2015-07-28 Palo Alto Research Center Incorporated Long-term resource provisioning with cascading allocations
US8918510B2 (en) * 2012-04-27 2014-12-23 Hewlett-Packard Development Company, L. P. Evaluation of cloud computing services
US9280194B2 (en) * 2012-06-25 2016-03-08 Intel Corporation Dynamic link width modulation
US9396008B2 (en) * 2012-07-13 2016-07-19 Ca, Inc. System and method for continuous optimization of computing systems with automated assignment of virtual machines and physical machines to hosts
US9270539B2 (en) * 2013-01-04 2016-02-23 International Business Machines Corporation Predicting resource provisioning times in a computing environment
EP2755133B1 (en) * 2013-01-10 2015-05-27 Fujitsu Limited Application execution controller and application execution method
US20150067171A1 (en) * 2013-08-30 2015-03-05 Verizon Patent And Licensing Inc. Cloud service brokering systems and methods
US9386086B2 (en) * 2013-09-11 2016-07-05 Cisco Technology Inc. Dynamic scaling for multi-tiered distributed systems using payoff optimization of application classes
US10552745B2 (en) 2013-10-18 2020-02-04 Netflix, Inc. Predictive auto scaling engine
US9722945B2 (en) * 2014-03-31 2017-08-01 Microsoft Technology Licensing, Llc Dynamically identifying target capacity when scaling cloud resources
US10361924B2 (en) * 2014-04-04 2019-07-23 International Business Machines Corporation Forecasting computer resources demand
US9632840B2 (en) * 2014-04-22 2017-04-25 International Business Machines Corporation Load balancing with granularly redistributable workloads
WO2015165546A1 (en) * 2014-05-01 2015-11-05 Longsand Limited Dynamically scaled web service deployments
US9979617B1 (en) * 2014-05-15 2018-05-22 Amazon Technologies, Inc. Techniques for controlling scaling behavior of resources
US9411626B2 (en) * 2014-06-18 2016-08-09 International Business Machines Corporation Optimizing runtime performance of an application workload by minimizing network input/output communications between virtual machines on different clouds in a hybrid cloud topology during cloud bursting
US9825881B2 (en) * 2014-09-30 2017-11-21 Sony Interactive Entertainment America Llc Methods and systems for portably deploying applications on one or more cloud systems
US10491537B2 (en) * 2014-10-28 2019-11-26 Salesforce.Com, Inc. Facilitating dynamic hierarchical management of queue resources in an on-demand services environment
US9513935B2 (en) * 2014-10-28 2016-12-06 International Business Machines Corporation Auto-scaling thresholds in elastic computing environments
WO2016069038A1 (en) * 2014-10-30 2016-05-06 Hewlett Packard Enterprise Development Lp Policy based workload scaler
US9959152B2 (en) * 2015-02-27 2018-05-01 Matrixx Software, Inc. Adaptive quota management system
US20180046477A1 (en) * 2015-04-02 2018-02-15 Telefonaktiebolaget Lm Ericsson (Publ) Technique For Scaling An Application Having A Set Of Virtual Machines
US10402733B1 (en) * 2015-06-17 2019-09-03 EMC IP Holding Company LLC Adaptive ensemble workload prediction model based on machine learning algorithms
US9785474B2 (en) * 2015-07-23 2017-10-10 International Business Machines Corporation Managing a shared pool of configurable computing resources using a set of scaling factors and a set of workload resource data
US10169086B2 (en) * 2015-09-13 2019-01-01 International Business Machines Corporation Configuration management for a shared pool of configurable computing resources
US10771538B2 (en) * 2015-10-08 2020-09-08 International Business Machines Corporation Automated ETL resource provisioner
US20170168729A1 (en) * 2015-12-11 2017-06-15 Netapp, Inc. Methods and systems for managing resources of a networked storage environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015708B2 (en) * 2011-07-28 2015-04-21 International Business Machines Corporation System for improving the performance of high performance computing applications on cloud using integrated load balancing

Also Published As

Publication number Publication date
EP3842943A1 (en) 2021-06-30
US11579936B2 (en) 2023-02-14
US20180210763A1 (en) 2018-07-26
EP3338410A1 (en) 2018-06-27
CN108496324A (zh) 2018-09-04
EP3338410A4 (en) 2018-08-01
EP4357922A2 (en) 2024-04-24
WO2017124981A1 (en) 2017-07-27
EP4357922A3 (en) 2024-06-26

Similar Documents

Publication Publication Date Title
CN108496324B (zh) 云工作负载发放系统和方法
US9985905B2 (en) System and method for cloud enterprise services
US10412166B2 (en) Hybrid cloud information management system
US11842214B2 (en) Full-dimensional scheduling and scaling for microservice applications
US8930541B2 (en) System, method and program product for cost-aware selection of templates for provisioning shared resources
US8832239B2 (en) System, method and program product for optimizing virtual machine placement and configuration
US9053004B2 (en) Virtual data storage service with sparse provisioning
US8909769B2 (en) Determining optimal component location in a networked computing environment
US10803411B1 (en) Enterprise platform deployment
US9979780B1 (en) Method and apparatus for selection between multiple candidate clouds for job processing
CN103238136A (zh) 对于异构迁移环境的虚拟机变化
WO2011072899A1 (en) Method for operating cloud computing services and cloud computing information system
WO2018223123A1 (en) Methods and apparatus for parameter tuning using a cloud service
US10242370B2 (en) Enforcing compliance with administrative requirements relating to using computing resources
CN110692037A (zh) 应用程序部署
US10169086B2 (en) Configuration management for a shared pool of configurable computing resources
US11310116B2 (en) Scaling of remote network directory management resources
CN114930291A (zh) 在多云环境中实现工作负载
US20220058727A1 (en) Job based bidding
CN116802614A (zh) 监测大型云计算系统的健康状态
US8306865B2 (en) Pricing remote information technology infrastructure monitoring services
US20180069748A1 (en) Distributed data collection in an enterprise network
US20230056965A1 (en) Dynamic multi-stream deployment planner
US20220066499A1 (en) Intelligent user equipment central processing unit core clock adjustment
US9691039B2 (en) Smart ordering system for proactive mitigation of system scarcity in a cloud or data center environment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant