Fonctions de fenêtrage (Azure Stream Analytics)

Dans les applications qui traitent des événements en temps réel, il est courant d’effectuer des calculs basés sur des ensembles (agrégation) ou d’autres opérations sur des sous-ensembles d’événements qui se situent dans un certain laps de temps. Étant donné que le concept de temps est une nécessité fondamentale pour les systèmes complexes de traitement d'événements, il est important de disposer d'un moyen simple de travailler avec le composant temporel de la logique de requête dans le système. Dans Azure Stream Analytics, ces sous-ensembles d'événements sont définis via des fenêtres pour représenter des regroupements par heure. Cet article décrit les fenêtres et comment elles sont définies, identifie les types de fenêtres pris en charge et explique comment utiliser des fenêtres avec différents opérateurs.

Présentation des fenêtres

Une fenêtre contient des données d'événement ainsi qu'une chronologie, et vous permet d'effectuer diverses opérations sur les événements s'inscrivant dans cette fenêtre. Par exemple, vous pouvez additionner les valeurs de champs de charge utile dans une fenêtre donnée, comme dans l'illustration suivante.

Fenêtre bascule de langage de requête Stream Analytics

Chaque opération de fenêtre génère un événement à la fin de la fenêtre. Les fenêtres d’Azure Stream Analytics sont ouvertes à l’heure de début de la fenêtre et fermées à l’heure de fin de la fenêtre. Par exemple, si vous disposez d’une fenêtre de 5 minutes de 00h00 à 00h05, tous les événements dont l’horodatage est supérieur à 12h00 et jusqu’à 12h05 inclus seront inclus dans cette fenêtre. La sortie de la fenêtre est un événement unique basé sur la fonction d'agrégation utilisée avec un horodatage égal à l'heure de fin de la fenêtre. L’horodatage de l’événement de sortie de la fenêtre peut être projeté dans l’instruction SELECT à l’aide de la propriété System.Timestamp() à l’aide d’un alias. Chaque fenêtre s'aligne automatiquement sur l'heure zeroth. Par exemple, une fenêtre bascule de 5 minutes s’aligne sur (12:00-12:05] , (12:05-12:10], ..., et ainsi de suite.

Après une opération de fenêtre, l’horodatage d’un événement diffère de l’attribut d’heure d’événement d’origine ( heure d’arrivée ou colonne utilisée avec TIMESTAMP BY). L’horodatage actuel et mis à jour d’un événement est toujours accessible avec system.timestamp().

Notes

Toutes les fenêtres doivent être utilisées dans une clause GROUP BY.

Il existe cinq types de fenêtres :

  1. Fenêtre bascule (Azure Stream Analytics)

  2. Fenêtre récurrente (Azure Stream Analytics)

  3. Fenêtre glissante (Azure Stream Analytics)

  4. Fenêtre session (Azure Stream Analytics)

  5. Fenêtre d’instantané (Azure Stream Analytics)

La taille maximale de la fenêtre dans tous les cas est de 7 jours.

Vous pouvez agréger sur plusieurs fenêtres de temps dans la même instruction GROUP BY à l’aide de la fonction Windows (Azure Stream Analytics).

Voir aussi

Fonctions intégrées (Azure Stream Analytics)
Fonctions d'agrégation (Azure Stream Analytics)
Fonctions analytiques (Azure Stream Analytics)
Fonctions de tableau (Stream Analytics)
Fonctions de conversion (Azure Stream Analytics)
Fonctions de date et d'heure (Azure Stream Analytics)
Fonctions d’enregistrement (Azure Stream Analytics)