Cette traduction automatique est fournie pour votre commodité.
En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.
NRQL predictions dans New Relic, il utilise les modèles de données historiques de vos séries temporelles pour prédire ou prévoir les tendances futures, en fournissant des informations détaillées sur le comportement des métriques à l'avenir. Cette approche proactive vous aide à visualiser les tendances et à anticiper les problèmes potentiels, permettant des interventions rapides pour maintenir des performances optimales du système. Les prédictions pour votre signal sont générées en ajustant un modèle d'apprentissage automatique à vos données historiques et en utilisant ce modèle pour prédire l'avenir. Cette fonctionnalité prend actuellement en charge les prédictions pour les séries chronologiques saisonnières (données présentant un modèle récurrent et répétable à une cadence définie) et non saisonnières. Les métriques qui présentent une forte tendance ou un modèle saisonnier défini sont les mieux adaptées aux prévisions. Ces prédictions sont mieux utilisées lorsqu'elles sont ajoutées au tableau de bord existant pour donner un indicateur visuel rapide de la direction que prennent vos métriques.
Important
NRQL predictions ne sont compatibles qu'avec les requêtes de séries temporelles. Pour plus de détails sur l'écriture de requêtes de séries chronologiques, reportez-vous à la documentation de la syntaxeNRQL sur la clause TIMESERIES.
Prédictions faites à l'aide de NRQL predictions (clause PREDICT ) pour une série chronologique. Dans cet exemple, les prévisions sont générées pour un jour dans le futur, en fonction du mot-clé BY . Le modèle produisant ces prédictions est formé sur un total de 17 jours de données : 3 jours de la fenêtre de requête plus 2 semaines (14 jours) du mot-clé USING . Notez que le graphique n’affiche pas toutes les données d’entraînement.
Exemples de situations dans lesquelles vous pourriez vouloir ajouter des prédictions à votre graphique ou dashboard:
Votre application produit davantage de logs au cours des dernières heures et l'espace disque s'épuise.
Votre application manque progressivement de mémoire, menaçant de faire planter l'ensemble du conteneur.
Vous devez projeter les revenus futurs en fonction des tendances et des tendances saisonnières observées.
Bien que NRQL predictions eux-mêmes n’identifient pas les problèmes potentiels, ils vous fournissent les informations dont vous avez besoin pour évaluer les tendances et planifier les défis futurs. Pour générer des alertes lorsque les valeurs prédites indiquent un problème imminent, vous pouvez utiliser la fonctionnalité Predictive Alerts . Predictive Alerts fonctionne aux côtés de NRQL predictions pour générer des prédictions pour vos métriques et vous alerter lorsque ces valeurs prédites dépassent un seuil statique.
Tarifs
NRQL predictions est une fonctionnalité de produit Advanced Compute proposée en tant que module complémentaire ou dans le cadre du modèle de tarification calculer. Les CCU avancés sont consommés lorsque les requêtes NRQL sont exécutées pour cette fonctionnalité.
Usage
NRQL predictions peut être généré de deux manières : soit directement sur des graphiques que vous avez déjà créés, soit en écrivant une requête NRQL à l'aide de la clause PREDICT.
Vous ne pouvez ajouter NRQL predictions qu'aux graphiques qui représentent des données de séries chronologiques, tels que les graphiques linéaires ou à aires. Pour ajouter un NRQL prediction à un graphique existant, procédez comme suit :
Pour ajouter des prédictions à un graphique linéaire ou à aires, sélectionnez-le dans Dashboards ou ouvrez-le dans Metrics and events.
Ajouter des prédictions
Pour ajouter une prédiction aux graphiques du tableau de bord, à partir du menu, sélectionnez Predict trend. L'option Predict trend n'est pas disponible pour les graphiques du tableau de bord organisé, qui sont des tableaux de bord générés par le système et non modifiables conçus pour des services spécifiques. Donc, à partir de la menu, sélectionnez View Query et ajoutez la clause PREDICT à la requête.
Dans Data Explorer, la prédiction apparaît sur le graphique en surbrillance dans une zone grise avec une ligne pointillée reliant les valeurs prédites, représentant le comportement par défautNRQL predictions. Vous pouvez affiner la requête en l'ajustant en fonction de vos besoins et la réexécuter pour obtenir les prédictions mises à jour.
Conseil
Lorsque vous ajoutez des prédictions à un graphique en aires, celui-ci se transforme en graphique linéaire contenant les prédictions.
Ajouter au dashboard
Pour ajouter un graphique contenant des prédictions à un dashboard:
Cliquez sur Add to dashboard.
Entrez un nom de widget.
Sélectionnez un dashboard existant ou créez-en un nouveau.
La syntaxe NRQL inclut la clause PREDICT pour rationaliser l'utilisation de NRQL predictions. Pour plus de détails et d'exemples d'utilisation, reportez-vous à la section sur le comportement par défaut .
Exemple d'utilisation de PREDICT dans une requête NRQL :
L’utilisation de la clause par défaut PREDICT fournit les meilleurs résultats de prédiction.
La clause PREDICT dans une requête est accompagnée des comportements par défaut suivants qui dépendent de la durée de votre fenêtre de requête (spécifiée à l'aide des clauses SINCE et UNTIL ) :
Default behavior
Saisonnalité
Détecte automatiquement si la saisonnalité est présente dans les données historiques. Si une saisonnalité est détectée, la durée de la saison identifiée est utilisée pour générer un modèle saisonnier, sinon un modèle non saisonnier est utilisé. Nous prenons actuellement en charge des durées saisonnières horaires, quotidiennes et hebdomadaires. Pour plus de détails sur la saisonnalité, reportez-vous à la section algorithme .
Hyperparamètres d'algorithme
Les hyperparamètres sont automatiquement optimisés et sélectionnés en fonction des données historiques.
Quantité de données historiques pour la formation
Utilise les données historiques des trois dernières fenêtres de requête (celle actuelle et les deux précédentes). Par exemple, si votre fenêtre de requête dure une heure, un total de trois heures sera utilisé pour la formation. Le graphique affiche uniquement les données de la fenêtre de requête actuelle, et non l'intégralité des données de formation.
Si vous souhaitez afficher uniquement une certaine durée dans la fenêtre de requête mais utiliser davantage de données pour la formation, vous pouvez utiliser la clauseUSING.
Si une saisonnalité autre que la valeur par défaut est spécifiée, la quantité de données d'entraînement utilisées sera différente. Pour plus de détails, consultez la section saisonnière .
Fenêtre de prédiction
Prédit une plage égale à 20 % de la durée totale spécifiée dans votre fenêtre de requête. Par exemple, si votre fenêtre de requête est d’une heure, les prédictions porteront sur les 12 prochaines minutes. Vous pouvez remplacer cette valeur par défaut avec la clauseBY.
Exemple de requête et résultat attendu lorsque PREDICT est utilisé :
Renvoie un graphique de séries chronologiques avec une fenêtre de requête par défaut d'une heure et des prévisions pour les 12 prochaines minutes. Au total, trois heures de données historiques sont utilisées pour la formation (1 heure à partir de la fenêtre de requête et 2 heures à partir des 2 fenêtres de requête précédentes).
Exemple 1
Example 2:
FROMTransactionSELECTsum(currentWorkerCount) TIMESERIES SINCE 3 hours ago UNTIL 1hour ago PREDICT
Renvoie un graphique de séries chronologiques avec une fenêtre de requête de deux heures (basée sur les clauses SINCE et UNTIL ) et des prédictions pour les 24 prochaines minutes. Au total, six heures de données historiques sont utilisées pour la formation (deux heures de la fenêtre de requête et quatre heures des deux fenêtres de requête précédentes).
Exemple 2
Personnalisation des prédictions avec BY, USING et SLIDE BY
Vous pouvez personnaliser les prédictions en définissant manuellement la saisonnalité du modèle et en ajoutant les mots-clés BY, USING et SLIDE BY .
Utilisez le mot-clé BY pour définir la période à laquelle vous souhaitez que le modèle prédise. Par exemple, PREDICT BY 3 hours génère des prédictions jusqu'à trois heures dans le futur à partir du dernier point de la série chronologique. Assurez-vous que la durée est de integer unit . Le montant maximum que vous pouvez prédire est de 360 fenêtres temporelles (c'est-à-dire la taille de votre fenêtre de série temporelle multipliée par 360).
Exemple de requête avec le mot-clé BY qui générera des prédictions pour les 30 prochaines minutes :
<>Exemple de prédictions réalisées avec le mot-clé <InlineCode>BY</InlineCode>. La zone encadrée indique quelle section du graphique est affectée par le mot-clé <InlineCode>BY</InlineCode>.</>
Utilisez le mot-clé USING pour spécifier la quantité de données historiques que vous souhaitez utiliser pour entraîner le modèle. La quantité totale de données utilisées est la somme de la durée de la fenêtre de requête (spécifiée avec les clauses SINCE et UNTIL ) et de la valeur spécifiée avec la clause USING . Par exemple, PREDICT USING 1 day utilise la fenêtre de requête ainsi que les données du jour précédent pour entraîner le modèle. Assurez-vous que la durée est de integer unit .
Vous pouvez utiliser jusqu'à 3 660 points de données pour entraîner un modèle. Si vous dépassez cette limite, vous recevrez un message d'erreur. Vous pouvez déterminer combien de temps cela représente en utilisant la fenêtre de séries chronologiques. Par exemple, avec une fenêtre temporelle d'une minute, vous pouvez utiliser jusqu'à 3 660 minutes de données d'entraînement, ce qui équivaut à 61 heures, soit environ 2,5 jours.
Exemple de requête avec le mot clé USING avec SINCE:
FROMTransactionSELECTsum(currentWorkerCount) SINCE 1 week ago TIMESERIES MAX PREDICT USING2 weeks
<>Exemple de prédictions réalisées avec le mot-clé <InlineCode>USING</InlineCode>. Le mot-clé <InlineCode>USING</InlineCode> affecte la quantité de données utilisées pour la formation qui ne sont pas visualisées sur le graphique.</>
Utilisez le mot-clé SLIDE BY pour réduire le bruit dans vos données lorsque vos prévisions montrent de nombreuses variations sur de courtes périodes. Cette clause regroupe les données dans des fenêtres temporelles qui se chevauchent avec un intervalle de diapositives spécifié, lissant les pics dans le graphique et facilitant l'identification des tendances.
Actuellement, NRQL predictions prend en charge l'algorithme Holt-Winters , également connu sous le nom de lissage exponentiel, pour les séries chronologiques saisonnières et non saisonnières. Il s’agit d’un algorithme couramment utilisé et standard pour les prévisions et les prédictions de séries chronologiques.
Non saisonnier
Pour les séries chronologiques non saisonnières, seuls le niveau (valeur moyenne) et la tendance (augmentation ou diminution moyenne) sont modélisés. Les prévisions non saisonnières sont linéaires, donc une ligne plate avec ou sans tendance est attendue.
Prédictions générées à l'aide de NRQL predictions pour une série chronologique non saisonnière.
Saisonnier
Pour les séries chronologiques saisonnières, le modèle saisonnier est inclus en plus du niveau et de la tendance. La saisonnalité représente un modèle répétable qui se produit sur une base périodique. Nous prenons en charge la détection automatique des saisons horaires, quotidiennes et hebdomadaires par défaut pour le modèle Holt-Winters. Afin de détecter chaque durée saisonnière, vous devez vous assurer que vous fournissez suffisamment de données via une combinaison de la durée de la fenêtre de requête (spécifiée à l'aide des clauses SINCE et UNTIL ) et de la clause USING . La quantité minimale de données requise pour chaque durée saisonnière est spécifiée ci-dessous. Par défaut, lorsqu'aucune clause USING n'est utilisée, NRQL predictions utilisera trois fois la fenêtre de requête pour générer des prédictions.
Detectable seasonalities
Description
Minimum amount of required data
Toutes les heures
Chaque horodatage dans l'heure se comporte de la même manière que dans les heures précédentes. Par exemple, 15h20 se comportera exactement comme 14h20, 13h20, etc.
2 heures
Tous les jours
Chaque heure se comporte de la même manière que les heures du jour précédent. Par exemple, 15 heures aujourd’hui se comportera de la même manière qu’hier à 15 heures.
2 jours
Hebdomadaire
Chaque jour de la semaine se comportera de la même manière que les semaines précédentes. Par exemple, le lundi de cette semaine se comportera de la même manière que le lundi des semaines précédentes.
2 semaines
Vous pouvez spécifier des durées saisonnières personnalisées à l'aide du paramètre seasonality .
Prédictions générées à l'aide de NRQL predictions pour une série chronologique avec saisonnalité hebdomadaire.
Nous prenons actuellement en charge les prévisions utilisant des versions non saisonnières et saisonnières de Holt-Winters. Pour définir une saisonnalité personnalisée, utilisez le paramètre holtwinters(seasonality: <value>) de la clause PREDICT .
Option
Description
<season length>
Spécifie qu'un modèle saisonnier avec la durée de saison fournie sera utilisé pour les prédictions. La durée de la saison doit être un integer unit de temps (c'est-à-dire 1 day ou 3 hours) qui représente la durée d'une seule période saisonnière. Par exemple, une valeur de 1 hour équivaut à une saisonnalité horaire, 1 day à une saisonnalité quotidienne et 1 week à une saisonnalité hebdomadaire.
AUTO
Utilise la détection automatique de la saison. Il analyse les données historiques dans la fenêtre de formation pour s'adapter aux modèles non saisonniers et saisonniers. La durée de la saison pour le modèle saisonnier est choisie en fonction de la saisonnalité la plus forte détectée dans la fenêtre d'entraînement. Une fois les deux modèles formés, le modèle le plus adapté est sélectionné et utilisé pour faire des prédictions.
NONE
Spécifie qu'un modèle non saisonnier sera utilisé.
Important
Si une durée de saison est spécifiée et que la clause USING est utilisée, la quantité de données utilisée pour la formation sera égale à la fenêtre de requête plus la quantité USING . Si aucun USING n'est spécifié, le maximum de la longueur saisonnière et trois fois la fenêtre de requête seront utilisés.
Exemple de requête avec une saisonnalité spécifiée par l'utilisateur :
Exemple de requête spécifiant une détection automatique de saison (il s'agit du même comportement que la valeur par défaut consistant à ne pas utiliser le paramètre holtwinters(...) ) :
Le réglage des paramètres du modèle est destiné aux utilisateurs avancés qui souhaitent un contrôle précis du modèle et pour recréer les prédictions générées avec les alertes prédictives.
Actuellement, Holt-Winters est le seul algorithme de prédiction pris en charge et il existe plusieurs hyperparamètres qui peuvent être ajustés pour affiner vos prédictions. Les hyperparamètres peuvent être modifiés en ajoutant holtwinters(<hyperparameter>: <value>) après la clause PREDICT dans votre requête. N'importe quelle combinaison des paramètres suivants peut être ajoutée pour modifier la façon dont le modèle est ajusté aux données historiques :
Hyperparameter
Description
Allowed values
alpha
Le facteur de lissage de niveau où une valeur plus grande donne plus de poids aux valeurs récentes.
[0, 1.0]
beta
Le facteur de lissage de tendance où une valeur plus grande donne plus de poids aux valeurs récentes.
[0, 1.0]
gamma
Le facteur de lissage saisonnier où une valeur plus grande donne plus de poids aux valeurs récentes. Ce paramètre n'est pas compatible avec les modèles non saisonniers et la requête renverra une erreur si vous essayez de spécifier holtwinters(seasonality: NONE, gamma: <value>).
[0, 1.0]
phi
Le paramètre d'amortissement de tendance où une valeur plus petite indique un amortissement plus important de la tendance et une prédiction qui s'aplatira.
[0, 1.0]
Il est recommandé d'utiliser uniquement des valeurs comprises entre ([0.98, 1.0])
Exemple de requête avec modifications d'hyperparamètres :
Cette requête définit la saisonnalité sur la détection automatique et met l'accent sur les données historiques en ajustant le facteur de lissage de niveau. Il prédit une heure dans le futur et entraîne le modèle en utilisant la longueur de la fenêtre de requête ainsi que les deux heures précédentes de données historiques. Le graphique affiche les prédictions personnalisées comme suit :