Configuring AIDA for KPIs prediction
To optimize KPIs predictions, AIDA administrator can configure tuning parameters.
Before you begin
- A linear or logistic growth trend model. AIDA automatically detects changes in KPIs trend by selecting changepoints from time series.
- A yearly seasonal component.
- A weekly and daily seasonal component.
- A user-provided list of holidays and special days.
Tuning parameters can be set the same way for all KPIs, and AIDA provides default values. However, since tuning parameters adjust the impact of seasonality and special days on prediction, it might be convenient to set them differently for each KPI. After you set tuning parameters, you must retrain the prediction model to recalculate the predictions.
About this task
- From each KPI graph in the KPIs Data Analysis page. For detail, see: Analyzing KPIs data.
- From each KPI graph in the Alert Instance Details page. For detail, see: Analyzing an alert instance.
- From AIDA Settings page, where you can change the global default values for all KPIs. For details, see: AIDA global settings.
By selecting the Tuning option, a side panel opens where you can customize some hyper parameters to fine-tune the Machine Learning model for KPIs prediction.
Check the option Override default value if you want to change default values for the selected KPIs. You can apply your changes immediately by clicking the Apply and retrain button: if a retraining process is already in progress, it will be stopped. Alternatively, you can save changes by clicking the Save button: in this case, changes will be applied automatically on the next planned retrain. To restore the default settings, click the Restore default values button.Tuning parameters
- General tuning
-
- Tolerance interval
-
Increase or decrease the tolerance interval for anomaly detection by using the parameter: tolerance_interval_width.
The smaller it is, the more anomalies can be identified.
Valid range is 0 - 1. Default value is 0.8.
- Advanced tuning
-
- Growth trend model
- Set the parameter growth_trend_model to establish if KPIs prediction
should follow a linear or logistic growth trend model.
Valid values: [linear|logistic]. Default value is linear.
- Trend flexibility
- Adjust the flexibility of trend changes (how the trend changes are being fit) by
using the parameter: trend_flexibility.
Increasing it will make the trend more flexible.
Valid range is 0 - 1. Default value is 0.05.
- Seasonality effect
- Adjust the extent to which the seasonality model will fit the data by using the
parameter: seasonality_effect. A large value allows the seasonality model
to fit large fluctuations, a small value shrinks the magnitude of the seasonality
effect.
Valid range is 0 - 10. Default value is 10 (which provides very little regularization).
- Special days effect
- Adjust the extent to which the special days model will fit the data by using the
parameter: special_days_effect.
A large value allows the special days model to fit large fluctuations, a small value shrinks the magnitude of the special days effect.
Valid range is 0 - 10. Default value is 10 (which provides very little regularization).
- Seasonality mode
-
To get the prediction, the effect of seasonality can be added or not to a KPI trend . Set the parameter:
- seasonality_mode = multiplicative
when the seasonality is not a constant additive factor, rather it grows with the trend, so it is not convenient to add its effect to the trend.
- seasonality_mode = additive
when the seasonality is a constant additive factor so it is convenient to add its effect to the trend.
Valid values:[multiplicative|additive]. Default value is additive.
- seasonality_mode = multiplicative
About scaling predictions
In this section, you can find some considerations about scaling predictions in AIDA .
About this task
AIDA deployment on Kubernetes enables automatic Pod scalability for KPIs prediction. A new Pod is deployed when the percentage of RAM used for prediction exceeds the 80% of RAM limit.
Special days have little to no impact on performance.
Every prediction uses about 200 MB of RAM. When the prediction is completed, the RAM is released. AIDA optimizes the number of predictions it can handle concurrently.
The time consumed by prediction has a linear growth curve over the number of predictions.
About OpenSearch configuration
In AIDA Docker deployment, OpenSearch is used with a single node. In Kubernetes deployment it can be configured with multiple nodes. The following table can help you configuring OpenSearch with multiple nodes.
Number of KPIs | Time period | Indexes |
100 | 1 month (30days) | 466 MB |
6 months (180 days) | 3051 MB | |
12 months (365 days) | 6150 MB | |
500 | 1 month (30days) | 3 GB |
6 months (180 days) | 18 GB | |
12 months (365 days) | 36 GB | |
1000 | 1 month (30days) | 6 GB |
6 months (180 days) | 36 GB | |
12 months (365 days) | 72 GB |