Partager via


Fonctions de fenêtrage

✅ Azure Stream Analytics ✅ Fabric Eventstream

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

Présentation de Windows

Une fenêtre contient des données d’événement le long d’une chronologie et vous permet d’effectuer différentes opérations sur les événements de cette fenêtre. Par exemple, vous souhaiterez peut-être additionner les valeurs des champs de charge utile dans une fenêtre donnée, comme illustré dans l’illustration suivante.

Fenêtre bascule du 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 avez une fenêtre de 5 minutes comprise entre 12h00 et 12h05, tous les événements avec timestamp supérieur à 12h00 et jusqu’à 12h05 inclus seront inclus dans cette fenêtre. La sortie de la fenêtre sera 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 la zéro heure. Par exemple, une fenêtre bascule de 5 minutes s’aligne sur (12:00-12:05] , (12:05-12:10], ..., etc.

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 ( l’heure d’arrivée ou la colonne utilisée avec TIMESTAMP BY). L’horodatage actuel et mis à jour d’un événement est toujours accessible avec system.timestamp().

Remarque

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

Il existe cinq types de fenêtres :

  1. Fenêtre bascule

  2. Fenêtre saut d’une fenêtre

  3. Fenêtre glissante

  4. Fenêtre session

  5. Fenêtre d’instantané

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 .

Voir aussi

Fonctions intégrées
Fonctions d’agrégation
Fonctions analytiques
Array Functions (Stream Analytics)
fonctions de conversion
Fonctions de date et d’heure
Fonctions d’enregistrement