Dans cet article, nous allons passer en revue les concepts courants que nous utilisons dans l'API Times Insights et essayer de fournir une explication intuitive de ce qu'ils représentent.
Event
Un événement est un point de données et l'entrée brute avec laquelle l'API TimeSeries Insights fonctionne. Sur le plan conceptuel, il s'agit d'une action exécutée par un agent (par exemple une transaction par un client ou la publication d'un article d'actualité) ou d'une observation (comme la lecture d'un capteur de température ou l'utilisation du processeur sur une .
Un événement contient:
- Un ensemble de valeurs sur différentes dimensions, représentant les propriétés décrivant l'événement, telles que des étiquettes ou des mesures numériques.
- Horodatage représentant l'heure de l'événement. Cet horodatage sera utilisé lors du placement d'événements dans une série temporelle.
- ID de groupe.
Variable
Une dimension représente un type de propriété pour les événements d'un ensemble de données et le domaine des valeurs qu'il peut prendre. Une dimension peut être:
- Catégoriel. Une propriété d'événement sur cette dimension peut contenir l'une des valeurs limitées/fines, généralement des chaînes. Exemples: le nom du pays ou de l'éditeur dans un ensemble de données avec des articles de presse, le nom de la machine dans un ensemble de données avec des données de surveillance de production
- Numérique. Une mesure ou une propriété numérique générale pour un événement. Exemples: nombre de pages vues pour les articles d'actualité, utilisation du processeur ou nombre d'erreurs pour les données de surveillance de production.
Ensemble de données
Un ensemble de données est une collection d'événements.
Groupe
Vous pouvez regrouper des événements en spécifiant le même ID de groupe (voir Event.group_id
).
Le groupe a pour objectif de calculer les corrélations entre les événements d'un même groupe, mais la version actuelle de l'API n'expose pas cette fonctionnalité. Par exemple, si votre ensemble de données contient des données de surveillance (telles que le processeur%, la RAM, etc.), un groupe peut conserver toutes les données de surveillance d'un processus donné. Cela nous permettrait de détecter qu'une augmentation du pourcentage d'utilisation du processeur est corrélée à un autre événement, tel qu'une mise à jour de la version binaire à un moment antérieur.
Si vous n'êtes pas sûr ou si vous ne souhaitez pas calculer ces types de corrélation, chaque événement doit avoir un ID de groupe unique.
Tranche
Une tranche est le sous-ensemble de tous les événements d'un ensemble de données qui ont les mêmes valeurs dans certaines dimensions catégoriques.
Par exemple, supposons que nous ayons un ensemble de données avec les ventes d'un revendeur international. Chaque événement est une vente associée aux dimensions catégoriques suivantes: le pays de vente, le nom du produit, les 101}nom de l'entreprise qui a créé le produit. Par exemple, dans ce cas de figure, toutes les ventes d'un produit donné, toutes les ventes d'un pays donné pour tous les produits d'une entreprise donnée.
Séries temporelles
Une série temporelle est une séquence d'événements agrégés qui est placée dans des buckets de taille identique. Elle est calculée en utilisant l'entrée suivante:
- Une tranche, et donc tous les événements de cette tranche.
- Intervalle de temps entre le début et la fin de la série temporelle. Pour une valeur
QueryDataSetRequest
donnée, ces limites sont [tested_interval.start_time - forecast_params.forecast_history
,tested_interval.start_time + tested_interval.length
]. Nous ne sélectionnerons que les événements de la tranche qui ont des valeursEvent.event_time
dans ces limites lors de la création de la série temporelle. - Durée de chaque bucket temporel de la série temporelle. Pour une valeur
QueryDataSetRequest
donnée, cette longueur est égale àtested_interval.length
. - Une méthode d'agrégation pour les événements Il existe actuellement deux méthodes d'agrégation que nous acceptons: comptabiliser les événements ou additionner une dimension numérique présente dans tous les événements (spécifié par
forecast_params.aggregated_dimension
).
Prévision
Processus de prédiction des valeurs futures pour une série temporelle donnée.
En attente
La retenue correspond à la dernière partie de la série temporelle (généralement 5 % à 10%) qui est utilisée pour évaluer les performances de notre modèle de prévision. Si le nombre d'erreurs de prévision est plus élevé pendant la période de mise en attente, nous réduirons le niveau de confiance de nos prévisions en élargissant les limites.
Horizon
Nous prévoyons les valeurs d'une série temporelle à partir de l'intervalle testé jusqu'à l'horizon chronologique (indiqué par le champ ForecastParams.horizon_time
).
Intervalle testé
L'intervalle testé (QueryDataSetRequest.tested_interval
) est un intervalle de temps pour lequel nous souhaitons détecter toutes les tranches de notre ensemble de données qui ont des valeurs inattendues (au cours de l'intervalle testé) par rapport à leur heure d'historique. .
Anomalie
Une tranche est marquée comme une anomalie si, après prévision, nous disposons d'une valeur prédite au cours de l'intervalle testé qui se situe en dehors de la plage attendue par une configuration configurable. .
Étape suivante
- Démarrage rapide pour l'API de séries temporelles
- Un tutoriel plus détaillé
- Guide de création de requêtes
- Apprenez-en plus sur l'API REST.