Я хочу сделать статистику, и статистика в процентах.wso2 cep Siddhiql объединить данные из 2 потоков
У меня есть запрос, который сообщает мне количество событий, происходящих из одного потока, который содержит несколько значений ['R', 'B', 'A', 'C']. И я хочу подсчитать, сколько Bs есть в stream1 в процентах.
Количество событий в stream1
@info(name='Query 1')
from stream1
select count() as numEvents
insert into event_num;
Количество событий, которые типа B
@info(name='Query 2')
from stream1[value == 'B']
select count() as numBs
insert into b_num;
Количество Процент:
@info(name='Query 3')
from every e1=event_num,e2=b_num
select (e2.numBs*100)/e1.numEvents as bpercent
insert into b_percent;
если есть значение, которое не B , то запрос 3 не будет увеличивать числовые значения и пересчитывать процент. Это означает, что процент Bs будет вычисляться только в том случае, если приходит B. Это не то, что я хочу. Я хочу, чтобы процент B уменьшался, если возникает другое значение и увеличивается, если B входит.
Как я могу сделать Query3 таким образом, чтобы независимо от того, будет ли event_num или будет ли v_num получать новое событие, вычисляет процент?
с этим кодом я не получаю никакого результата. Я считаю, что причина в том, что я не могу обновить таблицу на основе значения (dummyId), которое еще не существует в нем. Какие изменения мне нужно сделать? Вставить переписать? – JoaoFilipeClementeMartins
Эй, я закончил тем, что вставлял значения в таблицу событий, когда счетчик событий потока() == 1. он работает сейчас. – JoaoFilipeClementeMartins