Можем ли мы иметь условные операторы, как показано ниже, в плане выполнения 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 потоков, то план выполнения должен их отбросить.