Кіріспе

Оқиғаларды өңдеу – бұл оқиғалар туралы ақпараттың (деректердің) ағындарын қадағалау және талдау (өңдеу) әдісі, сондай-ақ олардан қорытынды шығару. Кешенді оқиғаларды өңдеу (CEP) – 1990 жылдардың басында нақты уақыт оқиғаларын өңдеу және оқиға ағынынан ақпаратты олар түскен кезде алу үшін жасалған тұжырымдамалар мен техникалар жиынтығы. Кешенді оқиғаларды өңдеудің мақсаты – нақты уақыт жағдайында маңызды оқиғаларды (мысалы, мүмкіндіктер немесе қауіптер) анықтау және оларға мүмкіндігінше жылдам жауап беру. Бұл оқиғалар ұйымның әртүрлі деңгейлерінде сату мүмкіндіктері, тапсырыстар немесе клиенттік қызмет көрсету шақырулары ретінде кездесуі мүмкін. Сонымен қатар, бұл жаңалықтар, мәтіндік хабарламалар, әлеуметтік желідегі жазбалар, қор нарығының ақпараты, жол қозғалысы, ауа райы туралы хабарламалар немесе басқа да деректер болуы мүмкін. CEP содан бері көптеген жүйелерде оқиғалардың келіп түсу ағынына дереу әрекет етуге мүмкіндік беретін технологияға айналды. Қолданбалары қазір (2018) қор нарығындағы сауда жүйелері, мобильді құрылғылар, интернет операциялары, алаяқтықты анықтау, көлік индустриясы және мемлекеттік барлау сияқты көптеген бизнес салаларында қолданылуда. Оқиғалар туралы мол ақпарат кейде «оқиға бұлты» деп аталады. қоңыраулар, той киіміндегі ер және әйел, ауада ұшып бара жатқан күріш. CEP бірқатар техникаларға сүйенеді, оның ішінде:

Оқиға үлгілерін анықтау
Оқиғаны абстракциялау
Оқиғаны сүзу
Оқиғаны жинақтау және түрлендіру
Оқиға иерархиясын модельдеу
Оқиғалар арасындағы қатынастарды анықтау (мысалы, себеп-салдар, құрамдастық немесе уақыт)
Оқиғаға негізделген процестерді абстракциялау

CEP-тің коммерциялық қолданбалары әртүрлі салаларда бар, оларға кредиттік карта алаяқтығын анықтау, бизнес белсенділігін бақылау және қауіпсіздікті бақылау кіреді.

Тарих

CEP аймағы дискретті оқиғалар симуляциясы, белсенді дерекқор аймағы және кейбір бағдарламалау тілдеріне қатысты. Өнеркәсіптегі қызметке дейін 1990 жылдары ғылыми-зерттеу жобаларының толқыны болды. Жалпылама CEP тілі мен орындау моделіне жол ашқан алғашқы жоба – Дэвид Лакхэм басқарған Стэнфорд университетіндегі Rapide жобасы. Параллельді түрде тағы екі зерттеу жобасы жүргізілді: K. Mani Chandy басқарған Калифорния технология институтындағы Infospheres және Джон Бейтс басқарған Кембридж университетіндегі Apama. Коммерциялық өнімдер осы және кейінірек жүргізілген зерттеу жобаларында дамыған ұғымдарға негізделген. Қоғамдық күш-жігер Оқиғаларды өңдеу техникалық қоғамы ұйымдастырған оқиғаларды өңдеу симпозиумдары сериясымен, содан кейін ACM DEBS конференциясы сериясымен басталды. Қоғамның бір ізгілігі – оқиғаларды өңдеу манифестін жасау.

Қарым-қатынас ұғымдары

CEP операциялық барлау (OI) өнімдерінде деректердің тікелей ағындары мен оқиғалар бойынша сұраныс талдауларын жүргізу арқылы бизнес-операциялар туралы түсінік беру үшін қолданылады. ОИ нақты уақыт деректерін жинап, тарихи деректермен салыстыра отырып, түсінік пен талдау жүргізеді. Әр түрлі дерек көздерін біріктіру арқылы қазіргі ақпаратты қолдана отырып, ортақ операциялық картинаны құруға болады. Желілік басқару, жүйелік басқару, қосымша басқару және қызмет көрсету басқаруда көбінесе оқиғалардың өзара байланысына сілтеме жасалады. CEP қозғалтқыштары сияқты, оқиғалардың өзара байланысын анықтайтын қозғалтқыштар (оқиғалар корреляторы) көптеген оқиғаларды талдап, ең маңыздыларын анықтап, тиісті шараларды іске қосады. Дегенмен, олардың көпшілігі жаңа қорытынды оқиғаларды жасамайды. Керісінше, жоғары деңгейдегі оқиғаларды төмен деңгейдегі оқиғалармен байланыстырады. Шешім қабылдау жүйелері, мысалы, ережелерге негізделген қорыту жүйелері, әдетте жасанды интеллектте қорытынды ақпаратты шығарады. Алайда, олар көбінесе күрделі (яғни, қорытынды) оқиғалар түрінде жаңа ақпарат ұсынбайды.

Мысал

CEP-нің жүйелі мысалы автомобиль, бірнеше сенсорлар және әртүрлі оқиғалар мен реакцияларды қамтиды. Сонымен, көлікте бірнеше сенсор бар делік: бірі дөңгелектің қысымын өлшейді, екіншісі жылдамдықты, ал үшіншісі адам отырғанын немесе орнынан тұрғанын анықтайды. Бірінші жағдайда, көлік қозғалып тұр және бір дөңгелектің қысымы 15 минут ішінде 45 пси-дан 41 пси-ға төмендейді. Дөңгелектің қысымы төмендеген сайын, дөңгелек қысымын қамтитын оқиғалар тізбегі жасалады. Сонымен қатар, көліктің жылдамдығын қамтитын оқиғалар тізбегі де жасалады. Көліктің Оқиға Процессоры (Event Processor) дөңгелек қысымының ұзақ уақыт бойы төмендеуі салдарынан "дөңгелекқысымытөмендеуі" (lossOfTirePressure) оқиғасының туындауын анықтауы мүмкін. Бұл жаңа оқиға көліктің техникалық қызмет көрсету журналына қысымның төмендеуін тіркеу және көліктің порталы арқылы жүргізушіге дөңгелек қысымы төмендегенін ескерту үшін реакция процесін іске қосуы мүмкін. Екінші жағдайда, көлік қозғалып тұр және бір дөңгелектің қысымы 5 секунд ішінде 45 пси-дан 20 пси-ға дейін күрт төмендейді. Басқа жағдай анықталады – мүмкін, қысымның төмендеуі қысқа уақыт ішінде болғандықтан, немесе әрбір оқиға арасындағы мәндердің айырмашылығы алдын ала белгіленген шектен асқандықтан. Бұл жағдай "дөңгелектіжару" (blowOutTire) деген жаңа оқиғаны тудырады. Бұл жаңа оқиға жүргізушіге дереу ескерту беру және көлікті бақылауын жоғалтпай тоқтатуға көмектесетін бортындағы компьютерлік бағдарламаларды іске қосу үшін басқа реакция процесін іске қосады. Сонымен қатар, анықталған жағдайларды көрсететін оқиғаларды басқа оқиғалармен біріктіріп, күрделірек жағдайларды анықтауға болады. Мысалы, үшінші жағдайда көлік қалыпты қозғалып келе жатып дөңгелегі жарылып, жолдан шығып, ағашқа соғылады және жүргізуші көліктен лақтырылады. Бірнеше түрлі жағдай тез анықталады. "Дөңгелектіжару", "нөлдікжылдамдық" (zeroSpeed) және "жүргізушіорнынантұрды" (driverLeftSeat) оқиғаларының өте қысқа мерзім ішінде бірігуі "жол-көлікоқиғасы" (occupantThrownAccident) деген жаңа жағдайды анықтауға мүмкіндік береді. Жүргізушінің лақтырылғанын немесе оқиға болғанын анықтайтын тікелей өлшеу болмаса да, оқиғалардың үйлесімі жағдайды анықтауға және анықталған жағдайды білдіретін жаңа оқиға жасауға мүмкіндік береді. Осыдан күрделі (немесе құрамдас) оқиғаның мәні көрінеді. Бұл күрделі, себебі жағдайды тікелей анықтау мүмкін емес; жағдайдың басқа оқиғалардың үйлесімінен туындағанын болжау немесе қорыту керек.

Бизнес процестерін басқарумен интеграциялау

CEP үшін табиғи үйлесім бизнес-процестерді басқару (BPM) саласында байқалды. BPM операциялық ортасына үздіксіз оңтайландыру және бейімделу мақсатында бизнес-процестердің бастапқыдан соңына дейінгі толық циклына назар аударады. Дегенмен, бизнестің оңтайландырылуы тек жеке процестеріне ғана емес, сонымен қатар олардың өзара байланысына да байланысты. Көрінетіндей, әртүрлі процестер бір-біріне маңызды әсер ете алады. Мысалы, мына сценарийді қарастырайық:
Әуе-ғарыш өнеркәсібінде көлік құралдарының істен шығуын қадағалау – жақсы тәжірибе. Бұл өндіріс процесіндегі, материалдағы және т.б. әлеуетті кемшіліктерді анықтауға мүмкіндік береді. Тағы бір жеке процесс – қолданыстағы көлік құралдарының қызмет мерзімін бақылау және оларды қажет болған жағдайда пайдаланудан шығару. CEP-тің бір пайдасы – осы екі жеке процесті байланыстыру. Егер бастапқы процесс (істен шығу мониторингі) металлдың шаршауына байланысты ақаулықты анықтаса (маңызды оқиға), онда екінші процесті (қызмет мерзімі) пайдалана отырып, ақаулы металлдың сол партиясын қолданған көлік құралдарын кері шақыруға қатысты шара қолға алынуы мүмкін. CEP және BPM интеграциясы екі деңгейде жүзеге асуы керек: бизнес-оқиғалар деңгейінде (пайдаланушылар өз процестерінің жалпы пайдасын түсінуі керек) және технологиялық деңгейде (CEP-тің BPM жүзеге асырумен өзара әрекеттесуіне мүмкіндік беруі керек). CEP-тің BPM-мен интеграциясы туралы соңғы зерттеулерге, осы сала жиі «Оқиғаға бағытталған бизнес-процестерді басқару» деп аталады, сілтеме жасаңыз. Есептеуге бағытталған CEP-тің рөлі, әрине, Бизнес-ережелер технологиясымен қатар келеді. Мысалы, клиенттерге қызмет көрсету орталықтары CEP-ті кликтер ағынын талдау және клиенттік тәжірибені басқару үшін пайдаланады. CEP бағдарламалық құралы бизнес-талдау және басқа да шешімдерді қолдау жүйелеріне секунд сайын миллиондаған оқиға (кликтің өзі немесе басқа да өзара әрекеттесулер) туралы ақпаратты ұсына алады. Бұл «ұсынымдық қосымшалар» агенттерге әр клиенттің тәжірибесіне сүйене отырып, жекелендірілген қызмет көрсетуге көмектеседі. CEP қосымшасы телефондағы клиенттің қазіргі уақытта не істеп жатқаны, немесе оның компаниямен филиалда, веб-сайтта (өздік қызмет көрсету мүмкіндіктерін пайдалану арқылы), жылдам хабар алмасу және электрондық пошта арқылы қалай өзара әрекеттескені туралы деректерді жинақтауы мүмкін. Содан кейін қосымша клиенттік тәжірибенің толық картинасын талдап, агентке телефон арқылы басшылық ететін сценарийлерді немесе келесі қадамдарды ұсынады, нәтижесінде клиент қанағаттанады деп үміттеніледі.

Уақыт тізбектерінің деректер базаларымен біріктіру

Уақыт реті деректер қоры – уақыт бойынша ұйымдастырылған деректерді өңдеуге бағытталған бағдарламалық жүйе. Уақыт сериясы – дерек элементтерінің шекті немесе шексіз тізбегі, онда әрбір элементке сәйкес уақыт белгісі тағайындалады және уақыт белгілерінің тізбегі кемімейді. Уақыт сериясының элементтері көбінесе «тік» деп аталады. Уақыт белгілерінің міндетті түрде өсуі қажет емес (тек кемімеуі керек), себебі практикада кейбір жүйелердің, мысалы, қаржылық деректер көздерінің уақыт шешімі өте төмен болуы мүмкін (миллисекундтар, микросекундтар тіпті наносекундтар), сондықтан тікелей оқиғалар бірдей уақыт белгісін алып жатуы мүмкін. Уақыт сериясы деректері күрделі оқиғаларды өңдеуге байланысты талдау үшін тарихи контекст ұсынады. Бұл кез келген салаға, мысалы, қаржы саласына және BPM сияқты басқа технологиялармен бірлесіп қолданылуы мүмкін. CEP талдауы үшін ең қолайлы жағдай – тарихи уақыт серияларын және нақты уақыт ағыны деректерін біртұтас уақыт континуумы ретінде қарастыру. Кеше, өткен аптада немесе өткен айда болған оқиғалар бүгін және болашақта болып жатқан оқиғалардың жалғасы ғана. Мысалы, сауда операцияларын жүзеге асыру логикасы үшін ағымдағы нарық көлемдерін тарихи көлемдермен, бағалармен және құбылмалылықпен салыстыру қажет болуы мүмкін. Немесе, нақты нарықтық бағаларға қатысты әрекет ету үшін секторлық және индекстік қозғалыстарды қамтитын бенчмарктермен салыстыру қажет болуы мүмкін, олардың күндізгі және тарихи трендтері құбылмалылықты бағалауға және аномалияларды тегістеуге көмектеседі.

Заттар интернеті және ақылды кибер-физикалық жүйелер

Кешенді оқиғаларды өңдеу – заттар интернеті (IoT) және интеллектуалды киберфизикалық жүйелер (CPS) салаларында маңызды рөл атқарады. Әртүрлі сенсорлардан келіп түсетін тығыз және әртүрлі дерек ағындарын өңдеу және осы ағындардағы үлгілерді анықтау – мұндай жағдайлардағы типовой міндет. Бұл техникалардың көпшілігі IoT жүйесінің күйін және оның өзгеруін статикалық, нақты модельге қарағанда дерек ағыны түрінде көрсетудің тиімдірек екендігіне негізделген. Мұндай ағынға негізделген модельдермен жұмыс істеу дәстүрлі ойлау әдістерінен түбегейлі өзгеше және көбінесе модельдік түрлендірулер мен CEP-тің үйлесімді қолданылуын қажет етеді.