Condividi tramite


Metodo TumblingWindow(TPayload) (CepStream(TPayload), TimeSpan, DateTime, WindowInputPolicy, HoppingWindowOutputPolicy)

Trasforma un flusso in un flusso della finestra in cui ciascun membro è un oggetto CepWindow. Una finestra a cascata è un tipo speciale di finestra di salto in cui le dimensioni della finestra e le dimensioni hop sono uguali. È inoltre possibile fornire un'ora di allineamento come riferimento per il punto iniziale della finestra.

Spazio dei nomi  Microsoft.ComplexEventProcessing.Linq
Assembly:  Microsoft.ComplexEventProcessing (in Microsoft.ComplexEventProcessing.dll)

Sintassi

public static CepWindowStream<CepWindow<TPayload>> TumblingWindow<TPayload>(
    this CepStream<TPayload> source,
    TimeSpan windowSize,
    DateTime alignment,
    WindowInputPolicy inputPolicy,
    HoppingWindowOutputPolicy outputPolicy
)

Parametri di tipo

  • TPayload
    Tipo di payload dell'evento di input.

Parametri

Valore restituito

Tipo: Microsoft.ComplexEventProcessing.Linq. . :: . .CepWindowStream< (Of < ( <'CepWindow< (Of < ( <'TPayload> ) > ) >> ) > ) >
Flusso di finestre al quale possono essere applicati aggregazioni, ordinamento per rango oppure operazioni definite dall'utente.

Nota sull'utilizzo

In Visual Basic e C# questo metodo può essere chiamato come metodo di istanza su qualsiasi oggetto di tipo CepStream< (Of < ( <'TPayload> ) > ) >. Quando si utilizza la sintassi del metodo di istanza per chiamare questo metodo, omettere il primo parametro. Per ulteriori informazioni, vedere https://msdn.microsoft.com/it-it/library/bb384936(v=sql.105) o https://msdn.microsoft.com/it-it/library/bb383977(v=sql.105).

Osservazioni

Per ulteriori informazioni, vedere Utilizzo delle finestre di eventi e Finestre di salto.

Esempi

var tumblingAgg = from w in inputStream.TumblingWindow(TimeSpan.FromHours(1),
                                                       HoppingWindowOutputPolicy.ClipToWindowEnd)
                  select new { sum = w.Sum(e => e.i) };

L'allineamento a salto (o a cascata) della finestra è un parametro facoltativo. Nell'esempio seguente ogni finestra inizia e finisce alle 9.00 (ora 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) };

Vedere anche

Riferimento

CepStream Classe

Overload TumblingWindow

Spazio dei nomi Microsoft.ComplexEventProcessing.Linq