Méthode TumblingWindow(TPayload) (CepStream(TPayload), TimeSpan, DateTime, WindowInputPolicy, HoppingWindowOutputPolicy)
Transforme un flux de données en un flux de données de fenêtre où chaque membre est un CepWindow. Une fenêtre bascule est un genre spécial de fenêtre récurrente où la taille de la fenêtre et la taille de saut de fenêtre sont identiques. Vous pouvez également fournir une heure d'alignement en tant que référence pour le point de départ de la fenêtre.
Espace de noms : Microsoft.ComplexEventProcessing.Linq
Assembly : Microsoft.ComplexEventProcessing (en Microsoft.ComplexEventProcessing.dll)
Syntaxe
public static CepWindowStream<CepWindow<TPayload>> TumblingWindow<TPayload>(
this CepStream<TPayload> source,
TimeSpan windowSize,
DateTime alignment,
WindowInputPolicy inputPolicy,
HoppingWindowOutputPolicy outputPolicy
)
Paramètres de type
- TPayload
Type de la charge utile d'événement d'entrée.
Paramètres
- source
Type : Microsoft.ComplexEventProcessing.Linq. . :: . .CepStream< (Of < ( <'TPayload> ) > ) >
CepStream auquel appliquer l'opération TumblingWindow.
- windowSize
Type : System. . :: . .TimeSpan
Longueur et taille de saut de la fenêtre.
- alignment
Type : System. . :: . .DateTime
Heure de référence pour aligner les heures de début des fenêtres.
- inputPolicy
Type : Microsoft.ComplexEventProcessing.Linq. . :: . .WindowInputPolicy
Indique comment les événements sont modifiés avant d'être introduits dans l'opération d'affichage.
- outputPolicy
Type : Microsoft.ComplexEventProcessing.Linq. . :: . .HoppingWindowOutputPolicy
Indique comment les événements de sortie de l'opération d'affichage sont modifiés.
Valeur de retour
Type : Microsoft.ComplexEventProcessing.Linq. . :: . .CepWindowStream< (Of < ( <'CepWindow< (Of < ( <'TPayload> ) > ) >> ) > ) >
Flux de données de fenêtre auquel des agrégats, un classement ou des opérations définies par l'utilisateur peuvent être appliqués.
Remarque relative à l'utilisation
En Visual Basic et C#, vous pouvez appeler cette méthode comme méthode d'instance sur tout objet de type CepStream< (Of < ( <'TPayload> ) > ) >. Lorsque vous utilisez la syntaxe de la méthode d'instance pour appeler cette méthode, omettez le premier paramètre. Pour plus d'informations, consultez https://msdn.microsoft.com/fr-fr/library/bb384936(v=sql.105) ou https://msdn.microsoft.com/fr-fr/library/bb383977(v=sql.105).
Notes
Pour plus d'informations, consultez Utilisation de fenêtres d'événement et Fenêtres récurrentes.
Exemples
var tumblingAgg = from w in inputStream.TumblingWindow(TimeSpan.FromHours(1),
HoppingWindowOutputPolicy.ClipToWindowEnd)
select new { sum = w.Sum(e => e.i) };
L'alignement de la fenêtre récurrente (ou bascule) est un paramètre optionnel. Dans l'exemple suivant, chaque fenêtre commence et se termine à 9 heures (UTC).
var snapshotAgg = from w in inputStream.TumblingWindow(
TimeSpan.FromHours(24),
new DateTime(TimeSpan.FromHours(9).Ticks, DateTimeKind.Utc),
HoppingWindowOutputPolicy.ClipToWindowEnd)
select new { sum = w.Sum(e => e.i) };