2016-07-13 6 views
0

Использования сиддхов 4.1.0Сиддхов СЕРЫ 4.x: Несколько результатов в каждой группу при использовании времени пакетного окна

Есть ли возможность применить time.windowBatch для предстоящих событий? Я понял, что временное окно работает на основе уже прибывших событий.

Скажем, например,

Я получаю несколько результатов при использовании window.timeBatch (2 мин) с группой по п.

В течение данной 2-минутной продолжительности я периодически пропускал 50 входных событий. Ожидаемое поведение - это все эти события, собранные вместе и заданные как единый результат (используется функция счетчика для проверки). Но он дает два результата, например, 40 и 10. Это первые 40 событий попадают в один период времени, а второй - в следующее окно? В этом случае, как я буду объединять или получать все эти события, один выход в течение 2 минут?

Также я хочу начать временное окно после того, как пришло первое событие.

Я испытал, что временное окно работает в фоновом режиме, в случае, если события приближаются к середине первого тайма, он собирает события только на 1 минуту. Оставшиеся минутные события собраны в следующем окне времени. Итак, наконец, я получил два результата.

Пожалуйста, предложите найти любое другое решение.

USECASE:

Мой UseCase основан на продолжительности времени (time.windowBatch (1 мин)) для мониторинга выключателей. Я хотел бы реализовать следующую процедуру.

Использование: Коммутатор отправляет ловушки SNMP на CEP. Ловушки похожи на switchFanFailed и switchFanOk.

Если я получаю ловушку switchFanFailed, следующая ловушка, которую я ожидаю от trapFanOk, будет находиться в пределах 1 минуты. Инкубация ловушки switchFanOk не принимается в течение 1 минуты, затем CEP будет генерировать уведомление по электронной почте. В противном случае он отбросит эту ловушку.

Хотя мой генератор ловушек генерирует ловушки switchFanFailed и switchFanOk в течение 1 минуты как постоянный, в некоторых случаях я не могу получить ловушки в том же окне.

Скажем, например, switchFanFailed приближается к концу 0,50 секунды, отсюда я должен ждать 1 минуту, чтобы ожидать ловушку switchFanOk.

ответ

0

К сожалению, я немного запутался с USECASE .. :)

ли ваша UseCase основана на время или длину или как .. Для времени пакетного окна, она начинается только после того, как приходит первое событие ..

Если вы хотите, чтобы ждать до 50 событий (или какой-либо нет событий, чтобы прибыть), то вы не должны использовать окно lengthBatch .. Если вы хотите, процесс в зависимости от времени и партии он затем использовать окно timeBatch ..

ли вам нет никаких фиксированных событий? Если нет, CEP/Siddhi не может ждать/выходить на неопределенный срок. Должно быть что-то сказать конец партии. Разве нет?

+0

Спасибо за ваш ответ. Добавлен usecase для вашей справки. – Muthusamy

+0

ОК, получилось. Мы должны использовать шаблон для вашего usecase, а не окно времени. Вы можете ссылаться на образец [1], который похож на ваше требование. [1] https://docs.wso2.com/display/CEP400/Sample + 0111 + - + Обнаружение + непоступления + с + Образцы – Mohanadarshan

+0

Спасибо за подсказку! Я проверю шаблон. – Muthusamy

0

У меня была одна и та же проблема, и она всегда создает два сводных данных для любого количества записей, отправленных в мой запрос группировки.Исправление для моей проблемы было, одно значение отличалось от других, которое использовалось в группировке. Я предлагаю вам проверить группировку.

Если вы думаете о слиянии двух записей, я предлагаю вам ues временное оконное окно timeBatch (1 мин.), В котором суммируется вывод вашего текущего набора данных.

 Смежные вопросы

  • Нет связанных вопросов^_^