Complex event procesing: trend v oblasti řízení procesů

Michal Černý 20. 1. 2014

Automatizace procesů patří mezi nejčastější činnosti, se kterými se v oblasti ICT můžeme setkat. Vývoj, tvorba projektů, vyřizování chyb a nových požadavků a mnoho dalších. Jedním z důležitých trendů je proto také Complex event procesing, tedy přístup k řešení problémů na základě předem definovaných schémat.

Complex event processing představuje systém analýzy toků dat a politik pro řešení určitých situací, pro které je tento tok signifikantní. Nejčastěji jde o koncept pracující s modelem událostmi řízené sítě, které jsou určitou inteligencí zachytávány a analyzovány.

Existují dva základní módy práce – buď jsou analyzována přímo data, což může být v řadě případů velice výpočetně náročné, nebo se pracuje pouze s jejich toky, což umožňuje podstatně rychlejší reakci. Cílem takových systémů je zefektivnění rozhodovacích procesů a měly by pracovat v (téměř) reálném čase.

Příkladem jejich nasazení může být obchodování na burze (dnes nejčastější užití těchto technologií), kdy systém automaticky vyhodnocuje, co má s danými akciemi a finančními prostředky dělat, když dochází ke konkrétnímu vývoji cen. Nemusí tak jít o triviální případ „kup, když je cena menší než X,“ ale je možné ošetřit i případy, když systém pozná pád burzy jako celku nebo třeba nepříznivé zprávy o hospodaření, a podobně lze přidat řadu dalších parametrů.

Na první pohled může jít o podobný systém, jaký nabízejí business intelligence systémy. Ty ale pracují s již existujícími daty, které analyzují a snaží se nabídnout manažerovi dostatečně kvalitní podklady pro kvalifikované rozhodování. Systémy založené na complex event processing se rozhodují samy a spíše okrajově pracují s daty, které jsou součástí nějakých minulých zkušeností. Hlavní roli přitom hrají právě nadefinované scénáře.

Struktura systému

Z toho, co již bylo řečeno, je zřejmé, že complex event processing jsou relativně náročné a robustní aplikace, které mají celou řadu dílčích komponent. Tradičně je možné uvést pět základních částí, ze kterých se skládají s tím, že jsou relativně nezávislé a obecně je možné každou z nich programovat zvlášť.

Schéma Complex event processingu

Korelační enginy jsou nástroje, které umožňují analyzovat toky dat a hledat v nich souvislosti a důležité scénáře. Hledají se přitom takové specifické vlastnosti toků, které by odpovídaly nějakému scénáři. Důraz většinou kladen na rychlost řešení, podrobná analýza dat přichází na řadu až později. Příkladem může být podezřelý provoz na síti, výpadek nějakého obvyklého provozu atp. S touto vrstvou souvisí také adaptéry, které slouží pro získávání dat z různých zdrojů – ať již jde o systémová zařízení, senzory, data od externích poskytovatelů a řadu dalších. Hotová řešení sice obsahují velké množství již hotových adaptérů, ale vždy je lepší si je upravit dle vlastních aktuálních potřeb.

Důležitou komponentou pro je prostředí pro vývoj aplikací a scénářů. Jde o jazyky, které pracují s kauzální spojitostí jednotlivých sledovaných jevů. Pomocí něj jen třeba identifikovat všechny potřebné fenomény, se kterými chceme pracovat a pak definovat jejich posloupnost pro jednotlivé scénáře. Postup tak může vypadat následovně: „jestliže A a do dvaceti vteřin B a současně do třiceti vteřin ne C, tak dělej D.“ Tyto scénáře mohou být značně složité. Navazují na ně funkce sloužící pro simulování chování systému tak, aby bylo možné dopředu zjistit, zda jsou dané scénáře efektivní či nikoli.

Dashboard, tedy manažerské informační rozhraní, které slouží pro vizualizaci výsledků v reálném čase, pak představuje poslední důležitou komponentu v systému. Měl by umět nejen zobrazovat co se právě děje pro informaci manažera, ale také upozornit na skutečnost, že nastává jev, který není dopředu popsán nějakým scénářem a vyžaduje zásah řídícího pracovníka.

Aplikace

V současné době již existuje celá řada zajímavých aplikací, které jsou s complex event processing spojené. Jedním z největších a nejznámějších příkladů optimalizace firemních procesů, je příklad hamburského přístaviště. Zde funguje průběžné monitorování výkladu lodí, přidělování skladovacích prostor nebo automatická navigace plavidel v docích tak, aby se minimalizovalo čekání a zlepšoval výkon celého komplexu firem a přidružených aktivit. Na masivnější rozšíření technologie zatím ale spíše čeká, i když několik dalších příkladů by se našlo. Mezi další řešení patří například MarkLogic, což je NoSQL databáze s podporou complex event processing, openPDC či Progress Apama a mnoho dalších.

Pro vývojáře i koncové uživatele může být zajímavý také engine Esper (esper.codehaus.org), což je komplexní open-source prostředí pro complex event processing. Disponuje předpřipravenými sadami nástrojů pro senzorické sítě (RFID, plánované komunikace se senzory atp.), finanční transakce, monitorování sítí nebo práce s business process management (BPM) a jeho automatizací. Tento engine se díky bohaté nabídce vestavěných funkcí se dobře hodí pro nejrůznější úpravy a rozšíření, případně dokonalé přizpůsobení potřebám jednotlivých koncových zákazníků. Modul pro vývoj complex event processing aplikací mají ale také například NetBeans.

Esper v online verzi

Dnes se aktivně pracuje na využití podobných aplikací nejen na burzách či velkých firmách, ale také v dopravě pro optimalizaci světelných signalizací nebo třeba v marketingu, kde je možné upravovat kampaň podle konkurence a chování zákazníka.

Závěrem

Complex event processing představuje mimořádně zajímavou a perspektivní cestu k automatizaci a zefektivnění řady procesů a firemních pochodů, což bude mít jistě netriviální ekonomický potenciál. Velké množství oblastí, které by tímto trendem mohlo být zasaženo, ale na využití zatím čeká a spolupráci vývojářů a manažerů se zde otevírá velký prostor, který by bylo škoda nevyužít. A to i přesto, že technologie, která má provádět automatické procesy, má celou řadu dílčích kritik či problémů. Můžeme zmínit argument cesty k průměrnosti algoritmickou optimalizací (hledají se jen lokální, nikoli globální optima), problémy ve spolupráci mezi IT specialisty a manažery nebo možnost chybně zvolené strategie, která může firmu úplně zruinovat.

widgety

Zdroj obrázku se schématem:

www.fujitsu.com/global/new­s/pr/archives/month/2011/20111216–02.html 

Našli jste v článku chybu?
Vitalia.cz: Muž, který miluje příliš. Ženám neimponuje

Muž, který miluje příliš. Ženám neimponuje

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

DigiZone.cz: Nova opět stahuje „milionáře“

Nova opět stahuje „milionáře“

120na80.cz: Co je padesátkrát sladší než cukr?

Co je padesátkrát sladší než cukr?

Lupa.cz: Jak důležitá je u firemních počítačů spotřeba?

Jak důležitá je u firemních počítačů spotřeba?

Vitalia.cz: Voda z Vltavy před a po úpravě na pitnou

Voda z Vltavy před a po úpravě na pitnou

Podnikatel.cz: Vánoce v září? Kaufland si legraci nedělá

Vánoce v září? Kaufland si legraci nedělá

Lupa.cz: Jak levné procesory změnily svět?

Jak levné procesory změnily svět?

DigiZone.cz: Funbox 4K v DVB-T2 má ostrý provoz

Funbox 4K v DVB-T2 má ostrý provoz

DigiZone.cz: Ginx TV: pořad o počítačových hráčích

Ginx TV: pořad o počítačových hráčích

Podnikatel.cz: Byla finanční manažerka, teď cvičí jógu

Byla finanční manažerka, teď cvičí jógu

Podnikatel.cz: Babišovi se nedá věřit, stěžovali si hospodští

Babišovi se nedá věřit, stěžovali si hospodští

DigiZone.cz: Technisat připravuje trojici DAB

Technisat připravuje trojici DAB

Vitalia.cz: Fyzioterapeutka: Chůze naboso? Rozhodně ano!

Fyzioterapeutka: Chůze naboso? Rozhodně ano!

120na80.cz: Zázrak ze smetiště: co léčí lopuch?

Zázrak ze smetiště: co léčí lopuch?

Vitalia.cz: Jak Ondra o astma přišel

Jak Ondra o astma přišel

Vitalia.cz: Test dětských svačinek: Tyhle ne!

Test dětských svačinek: Tyhle ne!

DigiZone.cz: Světový pohár v přímém přenosu na ČT

Světový pohár v přímém přenosu na ČT

Vitalia.cz: Tesco nabízí desítky tun jídla zdarma

Tesco nabízí desítky tun jídla zdarma

DigiZone.cz: Wimbledon na Nova Sport až do 2019

Wimbledon na Nova Sport až do 2019