1

wso2 cep 実行計画で以下のような条件ステートメントを使用できますか。

from stream1
select distinct attr1
insert into newStream1;

from stream2
select distinct attr2
insert into newStream2;

if

count(attr1) == count(attr2)

then 

-- do something

else 

-- do something else

ユースケースの説明:

3 つの異なるストリームからデータを取得する実行計画があるとします。ストリーム 1 はデバイス 1 からのデータを提供し、ストリーム 2 はデバイス 2 からのデータを提供します。

デバイスの総数を格納するテーブルがデータベースに既に格納されています。この場合、3 つのデバイスが格納されます。

実行計画では、5 分間のウィンドウのデータを取得します。そして、この 5 分以内に、3 つのストリームすべてからデータを取得した場合にのみ、データを処理する必要があります。そうでなければ、そうすべきではありません。

5 分以内に 2 つのストリームからのみデータを取得した場合、実行計画はそれを破棄する必要があります。

4

1 に答える 1

0

フィルタを使用して、このユース ケースを実装できます。「if」部分を含むフィルターを使用してクエリを追加し、フィルターに「else」条件を含む別のクエリを追加します。これらのクエリの出力を使用して、さまざまな種類の処理を個別に実行できます。複雑なシナリオでは一連のクエリを使用できます。

于 2014-10-06T09:01:31.893 に答える