Method and apparatus for selection between multiple candidate clouds for job processing

US9979780B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9979780-B1
Application numberUS-201213532132-A
CountryUS
Kind codeB1
Filing dateJun 25, 2012
Priority dateJun 25, 2012
Publication dateMay 22, 2018
Grant dateMay 22, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A processing device of an information processing system is configured to identify different candidate clouds for performing a processing job for a requesting user, to collect respective sets of parameters from the different candidate clouds with each such set of parameters characterizing at least one aspect of a manner in which the processing job would be performed in the corresponding candidate cloud, and to compile information characterizing the collected sets of parameters so as to permit informed selection by the requesting user or another system entity of at least a particular one of the candidate clouds for performing the processing job. The processing device may be further configured to permit the requesting user to monitor and/or control the processing job as it is executing in the selected cloud(s). For example, warnings may be provided to the user if execution of the processing job is not meeting specified user requirements.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving, via an application client on a user device, one or more user-specified quality of service (QoS) metrics for performance of a given processing job; initiating, via the application client, a first application server on at least a first cloud responsive to receiving the user-specified QoS metrics, the first application server being configured to interact with one or more additional application servers running on a plurality of candidate clouds to collect respective sets of parameters from the plurality of candidate clouds, the respective sets of parameters comprising information characterizing available capabilities of each of the plurality of candidate clouds; determining that a service provider of a given one of the plurality of candidate clouds does not expose one or more operating parameters needed to determine the predicted QoS available for the given candidate cloud; directing, via the application client, the first application server to run one or more monitoring applications on the given candidate cloud responsive to determining that the service provider of the given candidate cloud does not expose the one or more operating parameters needed to determine the predicted QoS available for the given candidate cloud; the first application server utilizing the one or more monitoring applications running on the given candidate cloud to determine the predicted QoS available for the given candidate cloud; presenting, via the application client on the user device, a comparison of the user-specified QoS metrics to a predicted QoS available for each of the plurality of candidate clouds, the predicted QoS available for each of the plurality of candidate clouds being determined by the first application server based on the collected sets of parameters; receiving, at the application client, a selection of at least one of the plurality of candidate clouds to execute the given processing job, the first application server being configured to execute the given processing job on the selected cloud responsive to the selection; monitoring, via the application client, performance metrics of the given processing job as it executes on the selected candidate cloud; determining, via the application client, that execution of the given processing job on the selected candidate cloud is not meeting one or more of the user-specified QoS metrics based on the monitored performance metrics; identifying, via the application client, one or more reasons that the execution of the given processing job is not meeting one or more of the user-specified QoS metrics; and providing, via the application client, a warning indicating the one or more reasons that the execution of the given processing job on the selected candidate cloud is not meeting one or more of the user-specified QoS metrics. 2. The method of claim 1 wherein identifying the one or more reasons that the execution of the given processing job is not meeting one or more of the user-specified QoS metrics comprises identifying an application that is part of the given processing job which is waiting for a given cloud resource, the given cloud resource comprises at least one of a storage, processing and network transmission resource. 3. The method of claim 2 further comprising, sending, via the application client, one or more requests to a service provider of the selected candidate cloud to provide priority access to the given cloud resource. 4. The method of claim 1 further comprising the application client directing the first application server to move, during execution of the given processing job, one or more resources between multiple candidate clouds to meet the user-specified QoS requirements. 5. The method of claim 1 wherein the user-specified QoS metrics comprises access, compute, storage and network available throughput QoS requirements. 6. The method of claim 5 wherein: the access QoS requirement comprises an average latency required; the compute QoS requirement comprises a number of central processing unit (CPU) cores required for the given processing job; the storage QoS requirement comprises a disk space required for the given processing job; and the network available throughput QoS requirement comprises a network throughput for data transfers. 7. The method of claim 6 wherein the information characterizing available capabilities of a given one of the plurality of candidate clouds for performance of the given processing job comprises: an average job runtime for other processing jobs executing on the given candidate cloud; a compute time per CPU core for other processing jobs executing on the given candidate cloud; a disk QoS available for the given processing job; and a network average throughput. 8. The method of claim 1 wherein the monitored performance metrics comprise a current latency of the given processing job, a current estimated runtime of the given processing job, error conditions on data transfers related to the given processing job, and one or more resources that are unavailable for the given processing job. 9. The method of claim 1 further comprising controlling, via the application client, execution of the given processing job on the selected candidate cloud. 10. The method of claim 1 wherein the user device comprises a mobile device, and wherein the first cloud on which the first application server is initiated is distinct from the mobile device such that collecting the respective sets of parameters from the plurality of candidate clouds and determining the predicted QoS available for each of the plurality of candidate clouds does not utilize computational resources of the mobile device. 11. The method of claim 1 wherein the first cloud on which the first application server is initiated is distinct from the plurality of candidate clouds. 12. A computer program product comprising a non-transitory processor-readable storage medium having encoded therein executable code of one or more software programs, wherein the one or more software programs when executed cause at least one processing device to implement an application client configured: to receive one or more user-specified quality of service (QoS) metrics for performance of a given processing job; to initiate a first application server on at least a first cloud responsive to receiving the user-specified QoS metrics, the first application server being configured to interact with one or more additional application servers running on a plurality of candidate clouds to collect respective sets of parameters from the plurality of candidate clouds, the respective sets of parameters comprising information characterizing available capabilities of each of the plurality of candidate clouds; to determine that a service provider of a given one of the plurality of candidate clouds does not expose one or more operating parameters needed to determine the predicted QoS available for the given candidate cloud; to direct the first application server to run one or more monitoring applications on the given candidate cloud responsive to determining that the service provider of the given candidate cloud does not expose the one or more operating parameters needed to determine the predicted QoS available for the given candidate cloud; the first application server utilizing the one or more monitoring applications running on the given candidate cloud to determine the predicted QoS available for the given candidate cloud; to present a comparison of the user-specified QoS metrics to a predicted QoS available for each of the plurality of candidate clouds, the predicted QoS available for each of the plurality of candidate clouds

Assignees

Inventors

Classifications

  • based on compliance of requirements or conditions with available server resources · CPC title

  • Indicating network or usage conditions on the user display · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9979780B1 cover?
A processing device of an information processing system is configured to identify different candidate clouds for performing a processing job for a requesting user, to collect respective sets of parameters from the different candidate clouds with each such set of parameters characterizing at least one aspect of a manner in which the processing job would be performed in the corresponding candidat…
Who is the assignee on this patent?
Faibish Sorin, Bent John, Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification H04L67/1012. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 22 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).