Обработка потоков событий

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Event stream processing»)
Перейти к навигации Перейти к поиску

Обработка потоков событий (англ. Event Stream Processing, ESP) — набор технологий, предназначенных для построения информационных систем обработки событий. ESP технология включает в себя визуализацию событий, их хранение, управляемое по событиям связующее программное обеспечение и языки программирования обработки событий. Основной задачей для ESP является обработка потоков событий (данных) с целью обнаружения в них значимых шаблонов, используя такие методы как поиск взаимосвязей между событиями, корреляция событий, иерархии событий, и другие аспекты, такие, как причинность, анализ составных событий и временных рядов.

Технология ESP применяется в различных приложениях, например для своевременного выявления мошенничества в сфере финансовых услуг; для оперативного анализа активностей на биржевых торговых площадках; для оценки производительности оборудования по разнородной информации поступающей с датчиков и сенсоров, например в нефтегазовой промышленности; в телекоммуникации для оперативного анализа оттока клиентов и проведения маркетинговых кампаний и др.

Примеры[править | править код]

В качестве иллюстрации, следующие фрагменты кода демонстрируют обнаружение шаблонов внутри потока событий. Первый пример — обработка потока событий с использованием непрерывного SQL запроса (запрос, который непрерывно обрабатывает поступающие данные, основываясь на временных метках). В данном фрагменте кода, операция JOIN соединяет два потока данных, один содержит фондовые заказы (Orders), другой — результаты сделок с ценными бумагами (Trades). На выходе запроса — поток заказов, сопоставленных со сделками, произошедшими в течение 1 секунды после выставления заказа. Выходной поток отсортирован по временным меткам таблицы Orders (заказы).

SELECT DataStream
   Orders.TimeStamp, Orders.orderId, Orders.ticker,
   Orders.amount, Trade.amount
FROM Orders
JOIN Trades OVER (RANGE INTERVAL '1' SECOND FOLLOWING)
ON Orders.orderId = Trades.orderId;

Другой пример, фрагмент кода который обнаруживает составное событие «свадьба» среди потока внешних событий, как результат событий, «колокольный звон», появление мужчины в смокинге и невесты в белом платье, и брошенного в воздух риса, произошедших в течение 2 часов.

WHEN Person.Gender EQUALS "man" AND Person.Clothes EQUALS "tuxedo"
FOLLOWED-BY
  Person.Clothes EQUALS "gown" AND
  (Church_Bell OR Rice_Flying)
WITHIN 2 hours
ACTION Wedding

См. также[править | править код]

Примечания[править | править код]

Ссылки[править | править код]