Система обработки событий - заявка 2016142579 на патент на изобретение в РФ

1. Система (100) обработки событий, предназначенная для обработки потока событий (101), действующих в системе баз данных, система (100) обработки событий содержит блок (103) балансирования нагрузки для событий, несколько узлов (105а, 105b, 105с) вычислений для событий и несколько хранилищ (109а, 109b, 109с) состояний событий, которые отделены от узлов (105а, 105b, 105с) вычислений для событий,
при этом блок (103) балансирования нагрузки для событий выполнен с возможностью направления потока событий (101) на несколько узлов (105а, 105b, 105с) вычислений для событий, в соответствии с критерием балансирования нагрузки для событий;
при этом несколько хранилищ (109а, 109b, 109с) состояний событий выполнены с возможностью хранения состояний нескольких узлов (105а, 105b, 105с) вычислений для событий с целью поддержания состояния обработки событий; и
при этом несколько узлов (105а, 105b, 105с) вычислений для событий выполнены с возможностью обработки событий (101), принятых от блока (103) балансирования нагрузки для событий, для изменения их состояний в соответствии с обработкой событий и для обновления нескольких хранилищ (109а, 109b, 109с) состояний событий на основе их измененных состояний.
2. Система (100) обработки событий по п. 1, дополнительно содержащая блок (115) балансирования нагрузки для запросов и несколько узлов (113а, 113b, 113с) обработки запросов,
при этом блок (115) балансирования нагрузки для запросов выполнен с возможностью направления потока запросов (117) на несколько узлов (113а, 113b, 113с) обработки запросов, в соответствии с критерием балансирования нагрузки для запросов;
при этом несколько узлов (113а, 113b, 113с) обработки запросов выполнены с возможностью обработки запросов (117), принятых от блока (115) балансирования нагрузки для запросов.
3. Система (100) обработки событий по п. 2, в которой блок (115) балансирования нагрузки для запросов выполнен с возможностью направления каждого запроса (117) точно на один узел (113а, 113b, 113с) обработки запросов.
4. Система (100) обработки событий по п. 2, в которой некоторый узел обработки запросов из нескольких узлов (113а, 113b, 113с) обработки запросов выполнен с возможностью получения доступа, по меньшей мере, к одному хранилищу состояний событий из нескольких хранилищ (109а, 109b, 109с) состояний событий с целью обработки запроса (117), принятого из блока (115) балансирования нагрузки для запросов.
5. Система (100) обработки событий по п. 4, в которой узел (113а, 113b, 113с) обработки запросов выполнен с возможностью получения доступа к дополнительным данным, в частности, основным данным клиента системы баз данных, с целью обработки запроса (117).
6. Система (100) обработки событий по п. 1, в которой несколько узлов (113а, 113b, 113с) обработки запросов выполнены с возможностью обработки незапланированных запросов с целью аналитической обработки в режиме реального времени.
7. Система (100) обработки событий по п. 1, в которой несколько хранилищ (109а, 109b, 109с) состояний событий содержат хранилище ключ-значение на основе распределенной оперативной памяти.
8. Система (100) обработки событий по п. 1, в которой несколько узлов (105а, 105b, 105с) вычислений для событий выполнены с возможностью обработки правил и непрерывных запросов с целью обработки сложных событий вместе с одновременной обработкой событий в режиме реального времени.
9. Система (100) обработки событий по п. 1, в которой блок (103) балансирования нагрузки для событий выполнен с возможностью направления событий (101) на основе определяемого приложением разделения, в частности, на основе ключа клиента, и дублирования правил.
10. Система (100) обработки событий по п. 9, в которой блок (103) балансирования нагрузки для событий выполнен с возможностью такого направления событий (101), что узел вычислений для событий из нескольких узлов (105а, 105b, 105с) вычислений для событий обрабатывает конкретное подмножество событий (101) и обрабатывает все правила для конкретного подмножества событий (101).
11. Система (100) обработки событий по п. 1, в которой блок (103) балансирования нагрузки для событий выполнен с возможностью направления событий (101) на основе дублирования событий и разделения правил, так что каждый узел (105а, 105b, 105с) вычислений для событий обрабатывает все события (101) и подмножество правил.
12. Система (100) обработки событий по п. 1, в которой блок (103) балансирования нагрузки для событий выполнен с возможностью направления событий (101) на основе кругового разделения событий (101) и дублирования правил, так что некоторый узел вычислений для событий из нескольких узлов (105а, 105b, 105с) вычислений для событий обрабатывает некоторое событие (101), когда он обладает свободной пропускной способностью.
13. Система (100) обработки событий по п. 1, в которой блок (103) балансирования нагрузки для событий выполнен с возможностью направления событий (101) на основе разделения и дублирования событий (101) и правил на несколько узлов (105а, 105b, 105с) вычислений для событий.
14. Способ (200) для обработки событий, при этом способ включает в себя следующее:
направляют (201) поток событий (101) на несколько узлов (105а, 105b, 105с) вычислений для событий, в соответствии с критерием балансирования нагрузки для событий;
сохраняют (202) состояния нескольких узлов (105а, 105b, 105с) вычислений для событий в нескольких хранилищах (109а, 109b, 109с) состояний событий, которые отделены от узлов (105а, 105b, 105с) вычислений для событий с целью поддержания состояния обработки событий; и
обрабатывают (203) принятые события (101) в нескольких узлах (105а, 105b, 105с) вычислений для событий, изменяют состояния нескольких узлов (105а, 105b, 105с) вычислений для событий в соответствии с обработкой событий (101) и обновляют состояния нескольких узлов (105а, 105b, 105с) вычислений для событий в нескольких хранилищах (109а, 109b, 109с) состояний событий.
15. Компьютерный программный продукт, содержащий считываемый носитель информации, хранящий программный код для использования компьютером, этот программный код содержит:
команды для направления потока событий (101) на несколько узлов (105а, 105b, 105с) вычислений для событий, в соответствии с критерием балансирования нагрузки для событий;
команды для сохранения состояний нескольких узлов (105а, 105b, 105с) вычислений для событий в нескольких хранилищах (109а, 109b, 109с) состояний событий, которые отделены от узлов (105а, 105b, 105с) вычислений для событий; и
команды для обработки принятых событий (101) в нескольких узлах (105а, 105b, 105с) вычислений для событий, для изменения состояний нескольких узлов (105а, 105b, 105с) вычислений для событий в соответствии с обработкой событий (101) и для обновления состояний нескольких узлов (105а, 105b, 105с) вычислений для событий в нескольких хранилищах (109а, 109b, 109с) состояний событий.
Наверх