Automated workload and simulation process for recommending candidate computing platforms
Abstract
This disclosure sets forth systems and methods for recommending candidate computing platforms for migration of data and data-related workload from an original computing platform. Recommendations of candidate computing platforms may be based on a comparison of key performance and utilization statistics of the original computing platform under a user-generated workload with candidate computing platforms under a synthetic workload. Key performance and utilization statistics may relate to CPU, memory, file I/O, network I/O, and database I/O operations on the respective computing platforms. The synthetic workload may be defined by parameters that simulate the key performance and utilization statistics of the original computing platform under the user-generated workload. Further, the synthetic workloads may be executed on individual candidate computing platforms to determine service level capabilities that are ultimately used to form the recommendation. The recommendation may be further based at least in part on price/performance ratios as defined by separate customer requirements.
Claims
exact text as granted — not AI-modifiedWhat is claimed:
1 . A system comprising:
one or more processors; memory coupled to the one or more processors, the memory including one or more modules that are executable by the one or more processors to: quantify a resource demand of an original computing platform, the resource demand being associated with execution of a user-generated workload on the original computing platform; identify a first candidate computing platform and a second candidate computing platform, based at least in part on the resource demand; cause a Platform Quality of Service (PQoS) agent to execute a synthetic workload on the first candidate computing platform and the second candidate computing platform, the synthetic workload to simulate the user-generated workload on the original computing platform, based at least in part on the resource demand; receive, via the PQoS agent, a first set of key performance and utilization statistics that correspond to the execution of the synthetic workload on the first candidate computing platform, and a second set of key performance and utilization statistics that correspond to the execution of the synthetic workload on the second candidate computing platform; and recommend the first candidate computing platform based at least in part on the first set of key performance and utilization statistics.
2 . The system of claim 1 , wherein the one or more modules are further executable by the one or more processors to:
monitor a plurality of instances of the original computing platform under the user-generated workload to determine performance and utilization characteristics that correspond to one or more of a Central Processing Unit (CPU) operation, a memory operation, file input/output operation, network input/output operation, or database input/output operation; and generate a resource demand index (RDI) based at least in part on the plurality of instances of the original computing platform under the user-generate workload, and wherein, to quantify the resource demand of the original computing platform is based at least in part on the RDI.
3 . The system of claim 1 , wherein the one or more modules are further executable by the one or more processors to:
generate a configuration file that identifies one or more performance and utilization characteristics to monitor and measure on the original computing platform under the user-generated workload; deploy the PQoS agent to the original computing platform to monitor and measure the one or more performance and utilization characteristics, based at least in part on the configuration file.
4 . The system of claim 1 , wherein the one or more modules are further executable by the one or more processors to:
determine a third set of performance and utilization characteristics of the original computing platform under the user-generated workload, based at least in part on the resource demand, and wherein, to identify the first candidate computing platform and the second candidate computing platform is further based at least in part on the third set of key performance and utilization characteristics.
5 . The system of claim 4 , wherein the third set of key performance and utilization characteristics include one or more of a Central Processing Unit (CPU) parameter, a memory parameter, a file input/output parameter, a network input/output parameter, or a database input/output parameter.
6 . The system of claim 1 , wherein the one or more modules are further executable by the one or more processors to:
generate a Service Capability Index (SCI) rating for the original computing platform under the user-generated workload, the SCI rating being a single-value term that is a function of a third set of key performance and utilization characteristics of the original computing platform under the user-generate workload, wherein, to identify the first candidate computing platform and the second candidate computing platform is further based at least in part on the third set of key performance and utilization characteristics.
7 . The system of claim 6 , wherein the one or more modules are further executable by the one or more processors to:
generate an SCI mark for the original computing platform, based at least in part the SCI rating and a Coefficient of Variance; retrieve a list of a plurality of candidate computing platforms with corresponding SCI marks; and compare the SCI mark of the original computing platform with the corresponding SCI marks of the plurality of candidate computing platforms, and wherein, to identify the first candidate computing platform and the second candidate computing platform from the plurality of computing platforms is based at least in part on a comparison of the SCI mark of the original computing platform and the corresponding SCI marks of the first candidate computing platform and the second candidate computing platform.
8 . The system of claim 1 , wherein the one or more modules are further executable by the one or more processors to:
generate a first SCI mark for the first candidate computing platform under the synthetic workload, and a second SCI mark for the second candidate computing platform under the synthetic workload; and determine a ranking order of the first candidate computing platform and the second candidate computing platform, based at least in part on the first SCI mark and the second SCI mark, and wherein, to recommend the first candidate computing platform is further based at least in part on the ranking order of the first candidate computing platform and the second candidate computing platform.
9 . The system of claim 1 , wherein the one or more modules are further executable by the one or more processors to:
receive customer requirements that include one or more criteria for selection of a candidate computing platform, the customer requirements including at least a performance-price ration, and wherein to recommend the first candidate computing platform is further based at least in part on the performance-price ration.
10 . The system of claim 1 , wherein the one or more modules are further executable by the one or more processors to:
receive a set of key performance and utilization statistics associated with the original computing platform under the user-generated workload; and generate the synthetic workload that simulates the user-generated workload on the original computing platform, based at least in part on the set of key performance and utilization statistics.
11 . The system of claim 1 , wherein the original computing platform, the first candidate computing platform, and the second candidate computing platform correspond to at least one of a bare metal direct-attached storage host, a traditional service, a public cloud-based computing platform, a private cloud-based computing platform, or a hybrid public-private cloud-based computing platform.
12 . The system of claim 1 , wherein the one or more modules are further executable by the one or more processors to:
monitor the resource demand of the original computing platform under the user-generated workload over a plurality of monitoring instances, individual ones of the monitoring instances having a predetermined duration and occurring within a predetermined time interval.
13 . A computer-implemented method, comprising:
under control of one or more processors: monitor a set of key performance and utilization characteristics of an original computing platform under a user-generated workload; generating a Service Capability Index (SCI) mark for the original computing platform under the user-generated workload, based at least in part on the set of key performance and utilization characteristics; selecting a first candidate computing platform and a second candidate computing platform, based at least in part on the SCI mark of the original computing platform under the user-generated workload; causing a Platform Quality of Service (PQoS) agent to execute a synthetic workload on the first candidate computing platform and the second candidate computing platform to simulate the user-generated workload on the original computing platform; generating a first SCI mark for the first candidate computing platform and a second SCI mark for the second candidate computing platform, based at least in part on execution of synthetic workload; ranking the first candidate computing platform and the second candidate computing platform, based at least in part on the first SCI mark and the second SCI mark; and recommending the first candidate computing platform, based at least in part on ranking.
14 . The computer-implemented method of claim 13 , further comprising:
receiving customer requirements that include one or more criteria for selection of a candidate computing platform, and wherein, ranking the first candidate computing platform and the second candidate computing platform is further based at least in part on the customer requirements.
15 . The computer-implemented method of claim 13 , further comprising:
generating an SCI rating for the original computing platform under the user-generated workload, the SCI rating being based at least in part on the set of key performance and utilization characteristics; determining a Coefficient of Variance that corresponds to the original computing platform under the user-generated workload, and wherein, the SCI mark is based at least in part on a combination of the SCI rating and the Coefficient of Variance.
16 . The computer-implemented method of claim 13 , further comprising:
generating the synthetic workload that simulates the user-generated workload on the original computing platform, based at least in part on the set of key performance and utilization characteristics.
17 . One or more non-transitory computer-readable media storing computer-executable instructions, that when executed on one or more processors, causes the one or more processors to perform acts comprising:
receive, one or more customer requirements associated with selection of a candidate computing platform, the one or more customer requirements including at least a performance-to-price ration; monitoring a set of key performance and utilization characteristics of an original computing platform under a user-generated workload; generating a synthetic workload that simulates the user-generated workload on the original computing platform, based at least in part on the set of key performance and utilization statistics; causing a Platform Quality of Service (PQoS) agent to execute the synthetic workload on a first candidate computing platform and a second candidate computing platform; ranking the first candidate computing platform and the second candidate computing platform, based at least in part on the one or more customer requirements and execution of synthetic workload on the first candidate computing platform and the second candidate computing platform; and recommending the first candidate computing platform, based at least in part on ranking.
18 . The one or more non-transitory computer-readable media of claim 17 , further storing instructions that, when executed cause the one or more processors to perform acts comprising:
receiving, via the PQoS agent, a first set of key performance and utilization statistics that correspond to the execution of the synthetic workload on the first candidate computing platform, and a second set of key performance and utilization statistics that correspond to the execution of the synthetic workload on the second candidate computing platform, and generating a first SCI mark for the first candidate computing platform and a second SCI mark for the second candidate computing platform, and wherein, ranking the first candidate computing platform and the second candidate computing platform is further based at least in part on the first SCI mark and the second SCI mark.
19 . The one or more non-transitory computer-readable media of claim 17 , further storing instructions that, when executed cause the one or more processors to perform acts comprising:
generating an SCI mark for the original computing platform under the user-generated workload, based at least in part on the set of key performance and utilization characteristics; retrieving, from a data-store, a list of a plurality of candidate computing platforms with corresponding SCI marks; and identifying the first candidate computing platform and the second candidate computing platform, based at least in part on a comparison of the SCI mark of the original computing platform and the corresponding SCI marks of the first candidate computing platform and the second candidate computing platform.
20 . The one or more non-transitory computer-readable media of claim 17 , wherein the set of key performance and utilization characteristics include one or more of a Central Processing Unit (CPU) parameter, a memory parameter, a file input/output parameter, a network input/output parameter, or a database input/output parameter.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.