0

StreamInsight では、多くのサンプルがストリームのカウント、合計、フィルターの linq の使用法に対応しています。

var cepStream = enumerable.ToPointStream(application, e =>  PointEvent<Car>.CreateInsert(new DateTimeOffset(e.TimeStamp, TimeSpan.Zero), e), AdvanceTimeSettings.IncreasingStartTime);

var step1 = from e in cepStream
                    where e.Color == "RedCar"
                    select e;

特定の時間内に発生したレコードを抽出するクエリを定義するのにいくつかの困難があります。例えば、step1は「レッドカー」というポイントイベントを格納していますが、10分以内に2回連続で発生した「レッドカー」のイベントを抽出するにはどうすればよいでしょうか??

本当にここで立ち往生しており、どんな助けも大歓迎です!!

4

1 に答える 1

1

2つのイベントが互いに特定の時間内に発生するかどうかを判断するには、両方が同時に有効になるように、イベントの有効期間を操作する必要があります。結合を使用して、2つのイベントが同時に有効かどうかを判断できます。

  1. step1のイベント時間をstep2としてシフトします。

    var step2 = step1.ShiftEventTime(e => TimeSpan.FromMinutes(10))のeからeを選択します。

  2. step1のイベント期間をstep3として変更します。

    var step3 = step1.AlterEventDuration(e => TimeSpan.FromMinutes(10))のeからeを選択します。

  3. step2とstep3をstep4として結合します。

    var step4=step2のlからlのstep3のrを結合rはrselectlに等しい;

それは役に立ちますか?

于 2013-03-23T17:50:06.407 に答える