2. Andreas Hartmann (Principal Software Engineer):
► Leichtgewichtige Softwarearchitekturen und Frameworks auf
Basis der JEE Plattform
► Serviceorientierte Architekturen und Portaltechnologien im
Kontext der Versicherungs- und Banken-Branche
Stephan Müller (Senior Software Engineer)
► Konzeption und Implementierung von Portalen und
Webanwendungen
► Serviceorientierte Architekturen und Webtechnologien
2 Complex Event Processing get in touch with JSF
3. Motivation
Es war einmal ein bekanntes Internet-Versandhaus für Bücher, Filme, ...
Warenlieferung Kunde ändert
verzögert sich Adresse
Waren-
Bestellung Verpacken Versand
eingang
Kunde Ware Kunde ändert
bestellt Artikel eingetroffen Artikelanzahl
3 Complex Event Processing get in touch with JSF
4. Agenda
Event Driven Architecture
Complex Event Processing
Esper
Live Demo
4 Complex Event Processing get in touch with JSF
5. Agenda
Event Driven Architecture
Complex Event Processing
Esper
Live Demo
5 Complex Event Processing get in touch with JSF
6. Event Driven Architecture
Konventionelle Architekturen
► Vergangenheitssicht auf Unternehmenszustand
► Ablauforientierte Geschäftsprozesse
► Singuläre Betrachtung von Ereignissen
► starke bis lose Kopplung von
Komponenten
► Synchrone- und asynchrone
Kommunikation
► Client bestimmt Kontrollfluss
durch Service-Aufruf
► Implizite Ereignisverarbeitung
6 Complex Event Processing get in touch with JSF
7. Event Driven Architecture
Ereignisgesteuerte Architekturen
► Vergangenheit, Gegenwart Echtzeit
► Ereignisgesteuerte Geschäftsprozesse
► Muster über mehrere Ereignisse
► Lose Kopplung / Entkopplung
von Komponenten
► Asynchrone Kommunikation
► Empfänger bestimmt Kontrollfluss
► explizite Ereignisverarbeitung CEP
7 Complex Event Processing get in touch with JSF
8. Agenda
Event Driven Architecture
Complex Event Processing
Esper
Live Demo
8 Complex Event Processing get in touch with JSF
9. Complex Event Processing
Online Transaction Online Analytic Realtime Analytic
Processing Processing Processing
Reporting Analysis Action
Daten erfassen und Warum ist es Erkennen was
ordnen - was ist passiert und was passiert und
passiert? sollte jetzt getan Auslösen einer
werden? Handlung
Quelle: Michelmann, Stream Computing, JavaSpektrum 1/2010
9 Complex Event Processing get in touch with JSF
10. Complex Event Processing
Online Transaction Processing (OLTP)
► Entwicklung hierarchischer und relationaler Datenbanken ab 1960
► sichere Speicherung von Daten
> Verarbeitung erfolgt online (direkt)
> Transaktionssicherheit steht im Vordergrund
> Daten sollen nie unvollständig oder inkonsistent gespeichert werden
► Anwendung
> Tägliche Reports
Reporting Analysis Action
10 Complex Event Processing get in touch with JSF
11. Complex Event Processing
Online Analytic Processing (OLAP)
► Aggregation von Geschäftsdaten aus dem operationalen Datenbestand
► Analyse in separatem System (Data-Warehouse)
> komplexe Zusammenhänge zwischen (nicht verknüpften) Daten erkennen
> Basis für besser informierte Entscheidungen generieren
► Anwendung
> Operationales Tagesgeschäft und Unternehmens-Geschäftsprozesse
> Anomalie-Erkennung
Reporting Analysis Action
11 Complex Event Processing get in touch with JSF
12. Complex Event Processing
Realtime Analytic Processing (RAP)
► Dienste müssen Informationen in „Echtzeit“ auswerten
> Analyse startet sobald Informationen verfügbar sind
► Datenströme werden kontinuierlich über Filter analysiert
> um Ereignisse zu korrelieren
> und daraus direkt Handlungen ableiten zu können
► Anwendung
> Generieren von Kauf- und Verkaufaufträgen
> Erkennen von Identitätsdiebstahl und Kreditkartenbetrug
> Location Based Services
Reporting Analysis Action
12 Complex Event Processing get in touch with JSF
13. Complex Event Processing
Complex Event Processing (CEP)
► Technologie zur dynamischen Verarbeitung von mehreren Ereignissen zur
gleichen Zeit
> analysiert Ströme von Ereignissen aus unterschiedlichen Quellen
nach temporalen oder kausalen Ereignismustern
> kann beim Erkennen eines Musters Aktionen initiieren
► Fokus auf komplexe Operationen über mehrere Ereignisse
► Realisierung von Anwendungen mit sehr hohen Datenvolumina und kurzen
Antwortzeiten
13 Complex Event Processing get in touch with JSF
14. Complex Event Processing
Event Stream Processing (ESP)
► Technologie zur Verarbeitung von kontinuierlichen Ereignisströmen
> analysiert Ausschnitte aus dem Ereignisfluss nach Mustern
► Fokus auf kontinuierliche Ereignisströme
14 Complex Event Processing get in touch with JSF
15. Complex Event Processing
Anwendungsbeispiele
► Mustererkennung
> Erkennen von Mustern und Erzeugen von Aktionen
► Systemüberwachung
> Systemausfälle via Heartbeats erkennen
> Denial-of-Service-Attacken und andere Angriffe erkennen
15 Complex Event Processing get in touch with JSF
16. Agenda
Event Driven Architecture
Complex Event Processing
Esper
Live Demo
16 Complex Event Processing get in touch with JSF
17. Esper
TIME Magazin 75th Anniv
► GNU General Public License (GPL) (GPL v2).
► http://esper.codehaus.org/
17 Complex Event Processing get in touch with JSF
18. Esper
Esper Engine
CEP
Complex Event Processing
JDBC Adapter
Configuration
EPL
Event Processing Event Object
Language
Listener Subscriber
18 Complex Event Processing get in touch with JSF
19. Esper
Esper
► Was will ich erreichen?
> Erkennen
> Archivieren
> Auswerten Low Level Events
High Level Events
Streams
Zeitfenster
Event Lebenszyklus
19 Complex Event Processing get in touch with JSF
20. Esper
Think Different
► Statements werden auf die Daten in einer Datenbank angewendet
Select * from . . .
► Statements werden an der Engine registriert
► Eingehende Datenstrom werden auf die Statements angewendet
select count(*) from . . .
20 Complex Event Processing get in touch with JSF
21. Esper
Kernkonzepte
► Konfiguration
> Event Alias Feature
► Listener vs. Subscriber
> Performace
> nur ein Subscriber pro EPL Statement
> Methoden Signatur der update Methode entspricht dem EPL Statement
► Variablen
> Zugriff über EPRuntime
> Einsatz z.B. in EPL Statements & JUnit Tests
► Views
> Zeitfenster
> Eventanzahl
21 Complex Event Processing get in touch with JSF
22. Esper
Kernkonzepte
► Funktionen
> avg, sum, count, etc.
► JDBC Connectivity
> SQL Statements können in EPL Statements eingebunden werden
► JMS Enabled
> receiving
> publish
22 Complex Event Processing get in touch with JSF
23. Esper
Performace
► 100.000 Events/s
► 1000 Statements
► 2 x Intel Xeon 5130 2GHz (4 cores total), 16GB RAM
► 80% Prozessorauslastung
► http://docs.codehaus.org/display/ESPER/Esper+performance
23 Complex Event Processing get in touch with JSF
24. Esper
Einsatz
► Purchasing
► Compliance
► Fraud Detection
► Monitoring
24 Complex Event Processing get in touch with JSF
25. Agenda
Event Driven Architecture
Complex Event Processing
Esper
Live Demo
25 Complex Event Processing get in touch with JSF
26. Esper – DoS Demo
26 Complex Event Processing get in touch with JSF
27. Esper – Twitter Demo
27 Complex Event Processing get in touch with JSF
28. Wir suchen Sie als
► Software-Architekt (m/w)
► Projektleiter (m/w)
► Senior Software Engineer (m/w)
jobs@adesso.de
www.AAAjobs.de