Szabályalapú rendszerek, eseményfeldolgozás

Hasonló dokumentumok
Szabályalapú üzleti logika, komplex eseményfeldolgozás

Szabályalapú üzleti logika

JBoss Drools laborgyakorlat

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Feltörekvő technológiák: seam, drools, richfaces és társai a JBossban

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Szabálykezelés a gyakorlatban

STANDARD DEVELOPMENT U.L. FACTORY SYSTEMS GROUP IT DEPARTMENT

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Fejlesztés, működtetés, felügyelet Hatékony infrastruktúra IBM szoftverekkel

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

EGY NAGYBÓL HÚSZ KISEBB

CMDB architektúra megjelenítése SAMU-val Rugalmas megoldás. ITSMF Bekk Nándor Magyar Telekom / IT szolgáltatás menedzsment központ

Cloud computing. Cloud computing. Dr. Bakonyi Péter.

Az IBM WebSphere Multichannel Bank Transformation Toolkit V7.1 felgyorsítja a többcsatornás alkalmazásfejlesztést

A hibrid DB cloud biztonsági eszköztára. Kóródi Ferenc Budapest,

Viczián István IP Systems JUM XIX szeptember 18.

vezeték nélküli Turi János Mérnök tanácsadó Cisco Systems Magyarország Kft.

Microsoft SQL Server telepítése

Adatbányászat és Perszonalizáció architektúra

Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék. Folyamatmodellezés

Cloud computing Dr. Bakonyi Péter.

SOPHOS simple + secure. A dobozba rejtett biztonság UTM 9. Kókai Gábor - Sophos Advanced Engineer Balogh Viktor - Sophos Architect SOPHOS

Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése

JAVA webes alkalmazások

Másolatképzési technikák és azok felhasználási lehetőségei

Oracle adatbázis biztonság a gyakorlatban és 12c újdonságok

Folyamatmodellezés (BPMN) és alkalmazásai

Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon

Felhők teljesítményelemzése felhő alapokon

Analitikai megoldások IBM Power és FlashSystem alapokon. Mosolygó Ferenc - Avnet

Folyamatok rugalmas irányítása. FourCorm Kft.

Miskolci Egyetem Gépészmérnöki és Informatikai Kar Informatikai Intézet Alkalmazott Informatikai Tanszék

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

IT trendek és lehetőségek. Puskás Norbert

Interaktív, grafikus környezet. Magasszintû alkalmazási nyelv (KAL) Integrált grafikus interface könyvtár. Intelligens kapcsolat más szoftverekkel

Félreértések elkerülése érdekében kérdezze meg rendszergazdáját, üzemeltetőjét!

Növekvő befektetés megtérülés és teljesítmény az Emelt Szintű Támogatás (ACS) eredménye

Rendszermodellezés. Modellellenőrzés. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Infor PM10 Üzleti intelligencia megoldás

Vezetői információs rendszerek

Szolgáltatás mérés/riportolás magas fokon Egy valós megoldás Pepsi berkekben

Dokumentum kompozíció

Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék. Folyamatmodellezés

IT Szolgáltatás Menedzsment az oktatási szektorban - 90 nap alatt költséghatékonyan

Közösség, projektek, IDE

Simon Balázs Dr. Goldschmidt Balázs Dr. Kondorosi Károly. BME, Irányítástechnika és Informatika Tanszék

Oracle SQL Developer Data Modeler és a DW adatmodellezés. Gollnhofer Gábor Meta Consulting Kft.

2016. április 21. Hotel Aquincum

Hegyi Béla, technikai tanácsadó. Cisco MARS Bemutatása

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

RapidAnalytics Enterprise Edition bevezetés a Telenor Magyarországnál. Szakács Balázs - Telenor Magyarország Szücs Imre United Consult

Data Integrátorok a gyakorlatban Oracle DI vs. Pentaho DI Fekszi Csaba Ügyvezető Vinnai Péter Adattárház fejlesztő február 20.

Oracle Enterprise Manager: Az első teljesértékű felhő üzemeltetési megoldás

Üzleti folyamatok rugalmasabb IT támogatása. Nick Gábor András szeptember 10.

Üzleti szabálykezelés

Modell alapú tesztelés mobil környezetben

Felhő alapú hálózatok Konténerek orkesztrálása Simon Csaba. Budapesti Műszaki és Gazdaságtudományi Egyetem

Szoftver Tervezési Dokumentáció. Nguyen Thai Binh

Java Business Integration szolgáltatásalapú architektúra JavaEE környezetben. Simon Géza Zsemlye Tamás

Üzleti kritikus alkalmazások Novell Open Enterprise Serveren

Szolgáltatás Modellezés. Tivoli Business Service Management

Oracle adatkezelési megoldások helye az EA világában. Előadó: Tar Zoltán

GE ITSG Industrial Technology Services Group

Felhő alkalmazások sikerének biztosítása. Petrohán Zsolt

Alkalmazásokban. Dezsényi Csaba Ovitas Magyarország kft.

webalkalmazások fejlesztése elosztott alapon

Szolgáltatási szint és performancia menedzsment a PerformanceVisor alkalmazással. HOUG konferencia, 2007 április 19.

CREATE TABLE student ( id int NOT NULL GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name varchar(100) NOT NULL, address varchar(100) NOT NULL )

RH/CentOS felügyelet SUSE Manager segítségével. Kovács Lajos Vezető konzultáns

Az Oracle Fusion szakértői szemmel

Szoftver-technológia II. Szoftver újrafelhasználás. (Software reuse) Irodalom

MMK-Informatikai projekt ellenőr képzés 4

Tartalomjegyzék. Előszó... 10

Fejlesztési projektek menedzselése IBM Rational CLM termékekkel. Ker-Soft Kft. Kaszás Orsolya - üzleti tanácsadó

BME-Ipar. Win-Win. Intelligens környezetek és e-technológiák. Dr. Charaf Hassan Fókuszban a Műegyetem és az ipar kapcsolata

DSD DSD. Egy országos méretű orvosi adatbázissal kapcsolatos informatikai kihívások. Kovács László Pataki Balázs Pataki Máté MTA SZTAKI DSD

BEVEZETÉS Az objektum fogalma

INFORMATIKA EGYRE NAGYOBB SZEREPE A KÖNYVELÉSBEN

Komponens modellek. 3. Előadás (első fele)

Oracle Enterprise Manager 12c Cloud Control és 11g Grid Control összehasonlítás

Big Data adattárházas szemmel. Arató Bence ügyvezető, BI Consulting

Elosztott adatbázis-kezelő formális elemzése

Kommunikációs rendszerek teljesítőképesség-vizsgálata

<Insert Picture Here> Egy DBA napja: Teljeskörű üzemeltetés Oracle Enterprise Manager-rel

Rendszerintegráció és -felügyelet

SUSE Linux Enterprise High Availability. Kovács Lajos Vezető konzultáns

Linux kiszolgáló felügyelet: SUSE Manager

SAS Enterprise BI Server

Riak. Pronounced REE-ahk. Elosztott adattároló eszköz. Molnár Péter

Teljesítménymodellezés

Automatikus infrastruktúra menedzsment és alkalmazástelepítés

A szemantikus világháló oktatása

Oracle9i Alkalmazás Szerver Üzleti folyamat integráció. Molnár Balázs Vezető értékesítési konzultáns Oracle Hungary

BGF. 4. Mi tartozik az adatmodellek szerkezeti elemei

Virtuális Obszervatórium. Gombos Gergő

IBM Rational AppScan. IBM Software Group. Preisinger Balázs Rational termékmenedzser

Osztott alkalmazások fejlesztési technológiái Áttekintés

IBM Váltsunk stratégiát! Budapest, 2012 november 14. V7000

Átírás:

Szabályalapú rendszerek, eseményfeldolgozás Gönczy László gonczy@mit.bme.hu Bergmann Gábor és az OptXware Kft. anyagainak felhasználásával Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Tartalom Szabályalapú logika DROOLS Szabályalapú megközelítés felhasználása: CEP Esettanulmány: CoMiFin 2

Szabályalapú üzleti logika

Business Rule Systems Szabály alapú üzleti logika MVC M V C Üzleti objektumok Üzleti szabályok

Üzleti logika kiszervezésére végrehajtató modell Üzleti objektumokat figyelhet, manipulálhat Felépítése: ha-akkor Üzleti szabályok o ha az ügyfél 30 év alatti, emeljük 35%-al az ajánlatot o ha az ügyfél egyenlege 500Ft alá csökkent, értesítsük o ha más ügyfél korábban bejelentkezett már azonos lakcímre, nem adunk kedvezményt o ha a hallgatónak legalább húsz lezárt féléve van, nem szerzett aláírást diplomatervezésből és nem kapott köztársasági elnöki engedélyt, akkor megszüntetendő a jogviszonya, feltéve hogy ötéves képzésre jár és az ezt előíró jogszabály hatályba lépése óta kezdte tanulmányait

Szabály alapú üzleti logika előnyei Dedikált szabálytár o Üzleti logika könnyebben módosítható o Pont ez változhat leggyakrabban: új rendeletek, stb. Redundancia elkerülése o Ugyanaz az üzleti logika sok modulban megjelenhet Jó esetben az üzleti döntéshozók is tudják olvasni o Sőt, akár írni is: természetes nyelvi verbalizáció Hatékony végrehajtás Cserélhető körülötte az architektúra Externalizáció, karbantarthatóság Eszköztámogatás

Felhasználási területek - példák Biztosítók, bankok o Kalkulációk kiemelése o Szabályok következetes kikényszerítése o Ügyek elbírálásának támogatása E-Kormányzat o Regisztráció kiértékelése o Adó, járulékszámítás Logisztika o Szállítmányozási döntések támogatása 7

Szabálytár BRMS szolgáltatások o Kereshető, automatizáltan módosítható o Verziózás Végrehajtó könyvtár, végrehajtó szerver, SOA Tool support o IDE, webes felület o Template lehetőség o Magasabb granularitású szabályok o Tesztelési támogatás, gyors próba o Üzleti szótár építése meglévő adatokból

Adottak tények Szabály alapú rendszerek o Ténybázis / munkamemória o Változatos felépítés Adottak szabályok, amelyekkel új tényeket lehet kapni o Szabálybázis o Felépítés: ha-akkor Végül egy következtető mechanizmus

Következtetés Előre láncoló (induktív/produkciós, adatvezérelt) o A tényekből újabb tényeket képez o Analógia: generatív nyelvtan o Ilyenek például a üzleti szabályrendszerek Hátra láncoló (deduktív, igényvezérelt) o Egy cél-állítást próbál visszavezetni alaptényekre o Analógia: parser o Ilyen például a Prolog és számos szakértői rendszer

Egyszerű előre láncoló rendszer WM Szabálybázis Szabály Illeszkedés Illeszkedés Tüzelés Kiválasztás Szabály Szabály Illeszkedés Illeszkedés Illeszkedés Illeszkedés

Egyszerű előre láncoló rendszer WM Naiv o Sok esetben elég Inkrementális o RETE, LEAPS, stb. Szabály Illeszkedés Illeszkedés Tüzelés Kiválasztás Szabály Szabály Illeszkedés Illeszkedés Illeszkedés Illeszkedés

Egyszerű előre láncoló rendszer WM Szempontok o Prioritás o Frissesség Szabály Illeszkedés Illeszkedés Tüzelés Kiválasztás Szabály Szabály Illeszkedés Illeszkedés Illeszkedés Illeszkedés

Előre láncoló rendszer vezérlése Leállás o STOP szabály után o Ha nincs több tüzelhető szabály Komplex rendszer: vezérlési folyam o Pl. UML Activity Diagram o Kiválthatja a bemutatott ciklust Eseményvezéreltség is elképzelhető o Alvó szabályok o Külön utasítás nélkül Szabály Szabály Szabály Szabály

BRMS o BRMS = Business Rule Management System Számos termék o G2, JBoss Rules, IBM ILOG (J)Rules, Blaze Advisor, MS BRE, TIBCO iprocess,

BRMS működés Szabályalapon leírt üzleti logika Következtető motor A következtető kiértékeli a szabályokat a rendelkezésre álló tényeken Tények beillesztése Produkciós szabályok Mintaillesztő Tudásbázis (Tények) Ütközésfeloldás Tények beillesztése/módosítása Több szabály vonatkozhat ugyanarra a tényállításra. Konfliktusban lévő szabályok feloldása Tények kiolvasása 16

Példa alkalmazás http://onjava.com/onjava/2007/01/17/building-enterprise-services-with-drools-rule-engine.html 17

Drools Expert Szabály szerkesztő + végrehajtó környezet o Eclipse alapú szerkesztés o Java engine, beágyazható Szabályok bevitele o Kódolás (Java, mvel) o Döntési táblából (Excel) o Természetes nyelvű szövegből o Egyszerű GUI-n (Guvnor) o Domain Specific Language: ~ template nyelv Szabály felépítése o Deklaratív feltétel (Left Hand Side) o Akció (Right Hand Side) 18

Összetett szabályok rule "We have an honest Politician" end salience 10 when exists( Politician( honest == true ) ) then insertlogical( new Hope() ); rule "Hope Lives" end salience 10 when exists( Hope() ) then System.out.println("Hurrah!!! Democracy Lives"); rule "Hope is Dead" when not( Hope() ) then System.out.println( "We are all Doomed!!! Democracy is Dead" ); end rule "Corrupt the Honest" when politician : Politician( honest == true ) exists( Hope() ) then System.out.println( "I'm an evil corporation and I have corrupted " + politician.getname() ); modify( politician ) { sethonest( false ) } end 19

Drools Flow Szabályok vezérlése o Prioritás használatával o Implicit módon megfelelő elő és utófeltételek, állapotváltozó o Explicit módon: egy tipikus használati módnak megfelelően Szabályok közti sorrendezés o RuleFlow vagy BPMN nyelven o Nem explicit vezérlés Nyelvi elemek o Szabály (csoportra) hivatkozó akció (ruleflow-group) o Emberi lépés o Automatizált lépések (script, email, ) Testreszabhatóság o Szakterület specifikus lépések 20

Flow példa 21

Szabályalapú megközelítés alkalmazása Complex Event Processing Stream Processing 22

CEP alapelvek Komplex esemény o Több elemi esemény összekapcsolása Tulajdonságok o Időzítések figyelembevétele (pl. csúszóablak) o Aszinkron működés o Oksági kapcsolatok, hierarchikus események o Korreláció SQL-szerű query nyelvek o Pl. EPL: Event Processing Language o Feldolgozási folyamatba láncolható lépések Elosztott adatforrások o Adatbázisok, beérkező kérések, megfigyelt események, stb. Skálázhatóság o Cloud környezet 23

CEP alkalmazási területek Üzleti alkalmazások o Tőzsde, befektetések o Treasury o Kockázatkiértékelés o Hitelek árazása o Szállítmánykövetés Business Activity Monitoring Online visszaélések felderítése/megelőzése o Gyanús tranzakciók ellenőrzése o Fogadási adatok elemzése (pl. UEFA) Nagy IT rendszerek üzemeltetése o Komplex támadások felderítése o Metrika kiértékelés Biztonságtechnika o Pl. ddos ellen http://www.complexevents.com/ 24

Map/Reduce algoritmus Map lépés o adat felosztása Reduce lépés o adat feldolgozása Példa o szöveg felosztása szavakra, szavak számának megállapítása Számos programnyelven Apache implementáció o Elosztott megoldás o Hadoop (+ Hadoop Distributed File System) o Ütemezés : Job Tracker, Task Tracker 25

CEP eszközök Esper Drools Fusion IBM InfoSphereStreams (System S) OpenESB - Intelligent Event Processor Apache Hadoop + ráépülő projektek Döntési szempontok o Eseményfeldolgozási logika o Áteresztőképesség o Elvárt válaszidő ( low latency ) 26

Esettanulmány: CoMiFin Szolgáltatásalapú rendszerek, modellvezérelt fejlesztés, komplex eseményfeldolgozás, 27

Esettanulmány: CoMiFin Communication Middleware for Financial Infrastructures Motiváció o Banki rendszerek egyre erősebben függenek külső szolgáltatóktól o Támadások egyre kifinomultabbak o Kritikus infrastruktúrák (pl. mobilhálózat, áramellátás, Internet) elleni komplex támadások kivédése o Hagyományos kommunikáció lassú (példa: 8 nap egy eset lezárása) Cél o Scheme to set up and manage a secure environment (software, hardware, monitoring tools, etc.) for information exchange and analysis Tanszéki spin-off (OptXware) vezette a demonstrátor fejlesztését 28

Példa: magyar infrastruktúra 29

Logikai architektúra ENEL TELECOM Control Centre UNICREDIT LLYODS TSB CoMiFin Control Service Centre AT&T AIG Intra-communications Inter-communications SWIFT 30

Online adatfeldolgozás (CEP) 31

Architektúra Financial Institutions (FI) emulated by Gateways Monitoring and evaluation SLA management, visualization Logical management (SR creation, ) Reliable communication (currently: Java Message Service) CoMiFin management components (OptXware testbed, Budapest) ED Event Processing (DHT) (ED Testbed, Rome) IBM Event Processing (AGILIS) (IBM Testbed, Haifa) 32

Eredmények megjelenítése 33

Session Hijack detektálás Session hijack: felhasználó forgalmának figyelésével beleavatkozni a munkamenetbe Környezet: egyszerű e-banking alkalmazás o Felhasználók kezelése o Tranzakciók indítása Alkalmazás specifikus információ monitorozása o Kliens IP címe o Session azonosító Hibainjektálás

Session Hijacking Application Server Bad Guy Ordinary Client

Session hijack detektálás Az IP és a session ID Drools alapú ellenőrzésével WARNING: possible session hijack: { currentaddress=127.0.0.1, remoteaddress=127.0.0.1, sessionid=21...b6 } and the possible attacker with the same session: { currentaddress=10.11.1.154, remoteaddress=127.0.0.1, sessionid=21...b6 }

Demonstrations Demo 2: Késedelmes backup felderítése o Több alkalmazásból érkező információ o Komplex esemény o Vonatkozó előírások: e.g. COBIT PO-4 Define the IT Processes, Organization and Relationships COBIT PO-9 Manage IT Human Resources

Késedelmes mentés detektálása Monitorozott szolgáltatások o Backup (storage alrendszer, adatbázis, stb.) o Az adminisztrátor bejelentkezése Időzítés szimulációs alapon 2 0 - OK 1 - WARNING 1 A backup valamiért meghiúsult 0 Adminisztrátor nem aktív 1 2 3 4 Time 5 6 7 8 9 10 Value Bckp Value Admin A probléma még mindig fennáll

Drools alapú detektálás Nagios (Simulator) Event Correlation Alert Rules logic data Rule Engine advice, alerts, action