Take(TPayload) メソッド (CepOrderedStream(TPayload), UInt32)
順序付けされたストリームが指定されている場合、指定した数のイベントを各ウィンドウから取得します。
名前空間: Microsoft.ComplexEventProcessing.Linq
アセンブリ: Microsoft.ComplexEventProcessing (Microsoft.ComplexEventProcessing.dll)
構文
public static CepStream<TPayload> Take<TPayload>(
this CepOrderedStream<TPayload> source,
uint numberOfElements
)
型パラメーター
- TPayload
入力イベントのペイロードの型。
パラメーター
- source
型: Microsoft.ComplexEventProcessing.Linq. . :: . .CepOrderedStream< (Of < ( <'TPayload> ) > ) >
入力ストリーム。
- numberOfElements
型: System. . :: . .UInt32
各ウィンドウから取得する要素の数。
戻り値
型: Microsoft.ComplexEventProcessing.Linq. . :: . .CepStream< (Of < ( <'TPayload> ) > ) >
各ウィンドウから取得した指定した数のイベントを含むストリーム。
使用に関するメモ
Visual Basic および C# では、このメソッドを型 CepOrderedStream< (Of < ( <'TPayload> ) > ) > の任意のオブジェクトのインスタンス メソッドとして呼び出すことができます。このメソッドを呼び出すためにインスタンス メソッドの構文を使う場合は、最初のパラメーターを省略してください。詳細については、「https://msdn.microsoft.com/ja-jp/library/bb384936(v=sql.105)」または「https://msdn.microsoft.com/ja-jp/library/bb383977(v=sql.105)」を参照してください。
説明
詳細については、「TopK」を参照してください。
使用例
次の例では、入力ストリーム inputStream 用に定義された各スナップショット ウィンドウから上位 5 つのイベントを取得し、新しいイベント ストリームを生成します。各ウィンドウのイベントは、ペイロード フィールド e.f の値の昇順と、ペイロード フィールド e.i の値の降順を組み合わせて並べられます。
// Assuming the following input event type for inputStream:
public class MyPayload
{
public int f;
public int i;
}
var topfive = (from window in inputStream.Snapshot(SnapshotWindowOutputPolicy.Clip)
from e in window
orderby e.f ascending, e.i descending
select e).Take(5);