IP Library Granted Patent US 9,065,783
Granted Patent B2
US 9,065,783 · App. 14/044,614 · Granted Jun 23, 2015

Automated capacity provisioning method using historical performance data

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,065,783
App. No.
14/044,614
Granted
Jun 23, 2015
Kind
B2
Abstract

The method may include collecting performance data relating to processing nodes of a computer system which provide services via one or more applications, analyzing the performance data to generate an operational profile characterizing resource usage of the processing nodes, receiving a set of attributes characterizing expected performance goals in which the services are expected to be provided, and generating at least one provisioning policy based on an analysis of the operational profile in conjunction with the set of attributes. The at least one provisioning policy may specify a condition for re-allocating resources associated with at least one processing node in a manner that satisfies the performance goals of the set of attributes. The method may further include re-allocating, during runtime, the resources associated with the at least one processing node when the condition of the at least one provisioning policy is determined as satisfied.

Claims (43)

1. A method for automatically allocating resources in a computer system, comprising:

collecting performance data relating to processing nodes of the computer system which provide services via one or more applications;

analyzing the performance data to generate an operational profile characterizing resource usage of the processing nodes over at least one time period;

receiving a set of attributes characterizing expected performance goals in which the services are expected to be provided between a provider and a consumer, the set of attributes including an attribute defining a response time for transactions to be below a time value for one or more of the processing nodes;

generating at least one provisioning policy based on an analysis of the operational profile in conjunction with the set of attributes, the at least one provisioning policy specifying a condition for re-allocating resources associated with at least one processing node in a manner that satisfies the performance goals of the set of attributes, the at least one provisioning policy indicating to allocate at least one additional server when a response time of the one or more processing nodes is greater than the response time defined by the attribute; and

re-allocating, during runtime of the computer system, the resources associated with the at least one processing node when the condition of the at least one provisioning policy is determined as satisfied including allocating the at least one additional server such that the response time of the one or more processing nodes is less than or equal to the response time defined by the attribute,

wherein if the expected performance goals cannot be achieved, the resources are re-allocated to distribute the transactions based on calculated recommended arrival rates of the processing nodes.

2. The method of claim 1 , further comprising:

collecting secondary performance data and updating the operational profile after re-allocating the resources; and

modifying the at least one provisional policy based on a subsequent analysis of the updated operational profile in conjunction with the set of attributes.

3. The method of claim 1 , wherein the operational profile includes computer processing unit (CPU) utilization and memory utilization of the processing nodes over the at least one time period.

4. The method of claim 1 , wherein the re-allocating the resources includes allocating a certain number of processing nodes having a certain computing power when the condition of the at least one provisioning policy is determined as satisfied such that the performance goals of the set of attributes are achieved.

5. The method of claim 1 , wherein the re-allocating the resources includes adjusting distribution of the transactions to the processing nodes based on calculated weighting values for the processing nodes.

6. The method of claim 1 , further comprising:

providing, via a user interface, the at least one provisioning policy such that a user can modify the at least one provisioning policy.

7. A system for automatically allocating resources in a computer system, the system comprising:

at least one processor;

a non-transitory computer-readable medium storing instructions, when executed by the at least one processor, are configured to implement,

a data collection tool configured to collect performance data relating to processing nodes of a computer system which provide services via one or more applications;

a recommendation tool configured to analyze the performance data to generate an operational profile characterizing resource usage of the processing nodes over at least one time period,

the recommendation tool configured to receive a set of attributes characterizing expected performance goals in which the services are expected to be provided between a provider and a consumer, the set of attributes including an attribute defining a response time for transactions to be below a time value for one or more of the processing nodes,

the recommendation tool configured to generate at least one provisioning policy based on an analysis of the operational profile in conjunction with the set of attributes, the at least one provisioning policy specifying a condition for re-allocating resources associated with at least one processing node in a manner that satisfies the performance goals of the set of attributes, the at least one provisioning policy indicating to allocate at least one additional server when a response time of the one or more processing nodes is greater than the response time defined by the attribute; and

a provisional tool configured to re-allocate, during runtime of the computer system, the resources associated with the at least one processing node when the condition of the at least one provisioning policy is determined as satisfied including allocating the at least one additional server such that the response time of the one or more processing nodes is less than or equal to the response time defined by the attribute,

wherein if the expected performance goals cannot be achieved, the resources are re-allocated to distribute the transactions based on calculated recommended arrival rates of the processing nodes.

8. The system of claim 7 , wherein the data collection tool is configured to collect secondary performance data, wherein the recommendation tool is configured to update the operational profile after re-allocating the resources and modify the at least one provisional policy based on a subsequent analysis of the updated operational profile in conjunction with the set of attributes.

9. The system of claim 7 , wherein the operational profile includes computer processing unit (CPU) utilization and memory utilization of the processing nodes over the at least one time period.

10. The system of claim 7 , wherein the provisioning tool configured to re-allocate the resources includes allocating a certain number of processing nodes having a certain computing power when the condition of the at least one provisioning policy is determined as satisfied such that the performance goals of the set of attributes are achieved.

11. The system of claim 7 , wherein the provisioning tool configured to re-allocate the resources includes adjusting distribution of the transactions to the processing nodes based on calculated weighting values for the processing nodes.

12. The system of claim 7 , wherein the provisioning tool is configured to provide, via a user interface, the at least one provisioning policy such that a user can modify the at least one provisioning policy.

13. A non-transitory computer-readable medium storing instructions, when executed by at least one processor, are configured to perform the following operations:

collect performance data relating to processing nodes of the computer system which provide services via one or more applications;

analyze the performance data to generate an operational profile characterizing resource usage of the processing nodes over at least one time period;

receive a set of attributes characterizing expected performance goals in which the services are expected to be provided between a provider and a consumer, the set of attributes including an attribute defining a response time for transactions to be below a time value for one or more of the processing nodes;

generate at least one provisioning policy based on an analysis of the operational profile in conjunction with the set of attributes, the at least one provisioning policy specifying a condition for re-allocating resources associated with at least one processing node in a manner that satisfies the performance goals of the set of attributes, the at least one provisioning policy indicating to allocate at least one additional server when a response time of the one or more processing nodes is greater than the response time defined by the attribute; and

re-allocate, during runtime of the computer system, the resources associated with the at least one processing node when the condition of the at least one provisioning policy is determined as satisfied including allocating the at least one additional server such that the response time of the one or more processing nodes is less than or equal to the response time defined by the attribute,

wherein if the expected performance goals cannot be achieved, the resources are re-allocated to distribute the transactions based on calculated recommended arrival rates of the processing nodes.

14. The non-transitory computer-readable medium of claim 13 , wherein the instructions include instructions to:

collect secondary performance data and update the operational profile after re-allocating the resources; and

modify the at least one provisional policy based on a subsequent analysis of the updated operational profile in conjunction with the set of attributes.

15. The non-transitory computer-readable medium of claim 13 , wherein the operational profile includes computer processing unit (CPU) utilization and memory utilization of the processing nodes over the at least one time period.

16. The non-transitory computer-readable medium of claim 13 , wherein the re-allocating the resources includes allocating a certain number of processing nodes having a certain computing power when the condition of the at least one provisioning policy is determined as satisfied such that the performance goals of the set of attributes are achieved.

17. The non-transitory computer-readable medium of claim 13 , wherein the instructions include instructions to:

provide, via a user interface, the at least one provisioning policy such that a user can modify the at least one provisioning policy.

Assignments (15)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY INTEREST Recorded Jul 27, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043351/0231 →
SECURITY INTEREST Recorded Jul 27, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043351/0189 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2013
From: DING, YIPING; MARRON, ASSAF; JOHANNESSEN, FRED
To: BMC SOFTWARE, INC.
Reel/Frame 031365/0327 →