Correlating resource utilization for systems and business drivers

The correlation coefficient indicates the extent to which two metrics are related to each other, in percentage terms between -100% and 100%. It is mainly expressed as:

  • A higher linear relation between metrics, if the value is greater in absolute terms (0% means no relation; 100% means perfect correspondence).
  • A positive sign, if an increase in the first metric corresponds to an increase in the second.
  • A negative sign, if an increase in the first metric corresponds to a decrease in the second.

Note

Mathematically, the correlation calculated is the Pearson Correlation Coefficient. It is reported as a positive or negative percentage – and not as a value between -1 and 1, as in the original definition – for better understanding.

Correlation analysis

Correlation analysis is the process of finding correlations between variables and determining the intensity of such correlations. In correlation analysis, metrics are considered in couples. Every value for the first metric is paired with a value of the second metric that occurred at the same time. These value couples are then plotted on a chart to show the effect of the growth of first metric on the behavior of the second. You can filter the data to identify and eventually remove any outliers.

The following types of correlation analyses are available in BMC Helix Continuous Optimization:

Performance versus load analysis

A performance versus load analysis (PLA) helps in finding potential correlations between business drivers and performance data. It shows the system's behavioral performance under load, and is based on an associated correlation map. 

The following video (4:02) illustrates the process of adding a performance vs load correlation analysis using the analysis wizard.

Information

This video describes the functionality of TrueSight Capacity Optimization, but it is valid for BMC Helix Continuous Optimization too.

 https://youtu.be/MhxHsr0bWnU


The main objectives of a performance versus load analysis are:

  • Create a meaningful (business- or function-oriented) association among business drivers and system resources. This can be done by:
    • Creating an initial map relating all business drivers with all resources.
    • Using the time frame defined in Load versus time analysis and Performance versus time analysis to analyze the correlation map.
    • Removing poor correlation or low confidence results.
    • Consolidating the map analysis results.
  • Verify the linear capacity model through graphical evaluation of:
    • Service demand
    • Residual utilization, which implies reviewing business driver choice.
    • Points that are relational outliers or distant, and clustering from the linear model, which implies reviewing the analysis time frame or business driver choice.

Performance versus load analysis: utilization versus page views

Load versus load analysis

A load versus load analysis (LLA) shows the relation between two business driver metrics to analyze their potential correlation or dependency. The main objective of the load versus load analysis is to identify the impact of peaks driven by one business driver on another, and to correlate them. You can also correlate two statistics, such as peak vs AVG, for a single metric. 

A load versus load analysis scatter chart showing order received versus page views

Performance versus performance analysis

In performance versus performance analysis, two performance metrics, such as peak performance and average peak performance, are analyzed together to find potential correlations or dependency between them. You can also correlate two statistics, such as peak vs AVG, for a single metric. 

Performance versus performance analysis of two standard database metrics

Correlation map

The correlation analyses are built on the correlation maps. When you create any of the correlation analyses, the correlation map tab is displayed. 

A correlation map shows the association between business driver metrics or performance metrics inspected in a single analysis. The association between different business driver metrics (performance metrics) is used to evaluate the correlation between the metrics. This correlation helps with understanding the dynamics of the application.

Rows represent the Y axis in correlation charts, and columns the X axis. Each X-Y couple on the map generates a scatter plot that displays a point (dot) for each X-Y pair taken at the same time instant. The line passing through the cloud of points (as seen in performance versus load analysis) is the linear regression. The closer the points to the line, the higher the correlation. The line has an angular coefficient (the slope) and an intercept.

After building initial associations, the correlation map helps you understand system behavior by means of the following automatically calculated indicators. Some indicators are common for all correlation analyses, while some are displayed depending on the configured Estimation Type in the Estimation tab of analysis editor

IndicatorDescription
Correlations

Correlation coefficients are the first set of results obtained by analyzing the associations defined in the correlation map, and by using the metrics measured for the specified time range.

Note: Low correlation does not necessarily indicate negligible association. On the other hand, a high – positive or negative – does indicate significant linear association.

Samples SizeSamples size represents the number of samples on which the correlations and the other parameters are calculated.
The following indicators are displayed when Service Demand, Res. Util (default option for PLA) is configured in the Estimation tab.
Service demand

Service demand is the time spent by a system resource processing a single business driver unit. It is the basis for building a queuing network models of the system. The correlation map estimates and reports the confidence interval and service demand for each associated business driver or resource.

Partitioning coefficient

Partitioning coefficient represents resource (for example, CPU) utilization in terms of the demand of a business driver's resource consumption. For example, if business driver A has a partitioning coefficient of 40%, it consumes 40% of the resource.

The Explained percentage value for a system is the sum of all partitioning coefficients, that is, the total percentage of the resource used by all the business drivers demanding it.

Residual utilization

Residual utilization is the offset value represented by resource utilization that is not caused by business drivers. It can be expressed as a utilization of resources when all business drivers are absent. This residual utilization occurs because of resident activity of the resource that brings about a non-zero utilization offset. In the case of the CPU, there is consumption of CPU resources even in the absence of a business driver.

Note: Mathematically, residual utilization is the intercept value of the same univariate or multivariate model found for service demand values.

The following indicators are displayed when Slope, Intercept (default option for PPA and LLA) is configured in the Estimation tab.

Slope

Slope is the ratio between a Y-axis metric and an associated X-axis metric. Although similar in purpose to Service demand, this parameter is calculated as the ratio of the first business driver metric (or performance metric) to the second.

Intercept

Intercept is the Y-axis offset that exists even when the X-axis metric is zero.

Note: Indicating two X values (X1,X2) on the map means that Y needs to be analyzed against two independent variables, X1 and X2. This can lead to two distinct univariate analyses – Y against X1 and Y against X2, or to a single multivariate analysis.

Understanding the map

The values of these calculated indicators can help validate the correlation map and understand whether the models based on that map are reliable for predictions or not.

To better understand the analysis, focus on the following:

  • Each correlation map row is a separate analysis case.
  • If a chosen row has a single association (indicated by an X), the analysis for this resource or business driver is univariate (or one-dimensional, 1-D).
  • If a chosen row has multiple associations (indicated by an X), the analysis for this resource or business driver is multivariate (or N-dimensional, N-D) or univariate based on the configuration. In such cases, if you choose univariate analysis, then X - Y relations are analyzed independently. 
    You can configure Estimation Method in the Estimation tab of analysis editor

Univariate analysis

A univariate analysis, considers each business driver separately and tries to explain the entire utilization of the system with each business driver. This method can be used if the business drivers are highly correlated, for example, the number of active transactions and the number of active users on a system. This type of analysis is generically suitable for Performance vs Performance or Load vs Load analyses. 

Multivariate analysis

Using a multivariate analysis, the utilization on the system is explained by the sum of all the business drivers in the map. This is the ideal method to select to perform a queueing network or extrapolation model to forecast how much the utilization will be based on the growth of the business driver.

Multivariate analysis is more complex to visualize because there is no graphical representation of the issue. To understand the solution of a multivariate analysis, imagine a N-dimensional surface that represents the linear regression (hyperplane) of the N-dimensional U/W cloud.


Was this page helpful? Yes No Submitting... Thank you

Comments