Marktübersicht Real-Time Monitoring Software - IAO-Wiki

Werbung
F R A U N H O F E R - I N S T I T U T F Ü R ar b eits w irts c haft un d or g anisation iao
Krešimir Vidačković, Thomas Renner, Sascha Rex
Marktübersicht
Real-Time Monitoring Software
Event Processing Tools im Überblick
Mit Complex Event Processing (CEP) und Event Stream Processing (ESP) stehen
neue Technologien zur Verfügung, mittels derer das Real-Time Monitoring
signifikanter Ereignisse und deren Beziehungen untereinander mit hohen
Verarbeitungsgeschwindigkeiten ermöglicht wird. Somit wird das Auslösen
unmittelbarer Reaktionen auf bestimmte Ereignisse und kritische Zustände nach
dem Push-Prinzip realisierbar.
Die vorliegende Marktübersicht liefert einen Einblick in die Funktionalitäten der
derzeit am Markt verfügbaren Event Processing Tools. Diese bieten neben der
reinen Ereignisverarbeitung in Echtzeit meist auch vielfältige Adapter zur Integration
in die vorliegende IT-Landschaft, Modellierungs- und Analysetools sowie
Dashboards zur visuellen Darstellung. Neben kommerziellen Produkten werden
auch ausgereifte Open Source-Lösungen betrachtet.
ISBN 978-3-8396-0185-3
9 783 839 60 1853
Fraunhofer Verlag
Marktübersicht Real-Time Monitoring Software
Aufgrund der stetig wachsenden Komplexität und Dynamik in der heutigen Zeit
erfordern viele Unternehmensanwendungen und Prozesse ein hohes Maß an
Transparenz und Agilität. Zudem steigen die Anforderungen nach einer
kontinuierlichen Verarbeitung von internen und externen Daten in Echtzeit und
mit zunehmenden Datenmengen.
Krešimir Vidačković
Thomas Renner
Sascha Rex
Marktübersicht Real-Time Monitoring Software
Event Processing Tools im Überblick
Autoren
Krešimir Vidačković, Thomas Renner, Sascha Rex
Kontaktadresse
Fraunhofer-Institut für Arbeitswirtschaft und Organisation IAO
Nobelstraße 12
70569 Stuttgart
Telefon 0711 970-5120
Telefax 0711 970-5111
E-Mail [email protected]
URL
http://www.e-business.iao.fraunhofer.de
Hinweis auf das Forschungsprojekt iC-RFID
Das diesem Bericht zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Wirtschaft und Technologie (BMWi) unter dem Förderkennzeichen 01MT06006 gefördert. Die Verantwortung für den Inhalt dieser Veröffentlichung liegt bei den Autoren.
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie;
detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.
ISBN: 978-3-8396-0185-3
Druck und Weiterverarbeitung
IRB Mediendienstleistungen
Fraunhofer-Informationszentrum Raum und Bau IRB, Stuttgart
Für den Druck des Buches wurde chlor- und säurefreies Papier verwendet.
Verlag und Druck
Fraunhofer Verlag, Fraunhofer-Informationszentrum Raum und Bau IRB
Postfach 800469, 70504 Stuttgart
Nobelstraße 12, 70569 Stuttgart
Telefon 0711 970-2500
Telefax 0711 970-2508
E-Mail [email protected]
URL
http://verlag.fraunhofer.de
© by FRAUNHOFER IAO, 2010
Alle Rechte vorbehalten
Dieses Werk ist einschließlich aller seiner Teile urheberrechtlich geschützt. Jede Verwertung, die über die engen Grenzen des Urheberrechtsgesetzes hinausgeht, ist ohne schriftliche Zustimmung des Verlags unzulässig und strafbar. Dies
gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen sowie die Speicherung in elektronischen
Systemen.
Die Wiedergabe von Warenbezeichnungen und Handelsnamen in diesem Buch berechtigt nicht zu der Annahme, dass
solche Bezeichnungen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären
und deshalb von jedermann benutzt werden dürften.
Soweit in diesem Werk direkt oder indirekt auf Gesetze, Vorschriften oder Richtlinien (z.B. DIN, VDI) Bezug genommen oder aus ihnen zitiert worden ist, kann der Verlag keine Gewähr für Richtigkeit, Vollständigkeit oder Aktualität
übernehmen.
2
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
Inhalt
Abbildungen
4 1 1.1 1.2 Einführung
Grundlagen
Komponenten von Event Processing Tools
5 6 13 2 2.1 2.2 2.3 2.3.1 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.3.8 2.3.9 2.3.10 2.3.11 2.3.12 2.3.13 2.3.14 2.3.15 2.3.16 2.3.17 2.3.18 2.3.19 2.3.20 2.3.21 2.4 Marktübersicht
Vorgehensweise bei der Erstellung der Marktübersicht
Kriterienraster
Produktbeschreibungen
Sybase Aleri Streaming Platform / CEP
Progress Apama
TIBCO BusinessEvents & Spotfire
ruleCore CEP Server
Truviso Continuous Analytics
UC4 Decision & UC4 Insight
JBoss Drools Fusion
Oracle EDA Suite
EsperTech Esper
Event Zero Event Processing Network
StreamBase Event Processing Platform
Open ESB Intelligent Event Processor (IEP)
Vitria M3O Analytic Server & M3O Operations Book
Realtime Monitoring RTM Analyzer
Informatica Rulepoint
Starview Smart Enterprise Platform
Microsoft StreamInsight
Axway Synchrony Sentinel
West Global Vantify
IBM WebSphere Business Events
SL RTView
Tabellarische Übersicht
16 16 16 18 20 23 26 29 31 33 36 38 41 44 47 49 51 54 57 59 61 63 65 67 70 72 3 Fazit
76 Abkürzungen
78 Referenzen
80 Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
3
Abbildungen
Abbildung 1: Logische Strukturierungsschichten beim Event Processing
Abbildung 2: Modellierung mit dem Sybase Aleri Studio
Abbildung 3: Entwicklung mit dem Progress Apama Studio
Abbildung 4: Modellierung mit dem Progress Apama Dashboard Builder
Abbildung 5: Exemplarisches TIBCO Spotfire Dashboard
Abbildung 6: Modellierung mit UC4 Decision
Abbildung 7: Beispielhafte Event Tunnel-Darstellung mit UC4 Insight
Abbildung 8: Entwicklung mit JBoss Drools
Abbildung 9: Modellierung mit der Oracle EDA Suite
Abbildung 10: Exemplarisches Oracle BAM Dashboard
Abbildung 11: Beispielhaftes EsperHQ Dashboard
Abbildung 12: Event Zero Administrations- und Entwicklungstool
Abbildung 13: Beispielhaftes Event Zero Dashboard
Abbildung 14: Modellierung mit dem StreamBase Studio
Abbildung 15: Elemente für die Entwicklung mit Open ESB IEP
Abbildung 16: Modellierung mit dem Vitria M3O Query Modeler
Abbildung 17: Beispielhafte Vitria M3O Operations Book Dashboards
Abbildung 18: Entwicklung mit dem RTM Analyzer
Abbildung 19: Exemplarisches RTM Analyzer Dashboard
Abbildung 20: Beispielhafter Informatica Rulepoint Alert Manager
Abbildung 21: Modellierung mit Starview
Abbildung 22: Entwicklung mit Microsoft StreamInsight
Abbildung 23: Exemplarische West Global Vantify Dashboards
Abbildung 24: Entwicklung mit IBM WebSphere Business Events
Abbildung 25: Beispielhafte Diagramme in IBM WebSphere Business Space
Abbildung 26: Modellierung mit dem SL RTView Builder
4
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
10 22 24 25 27 34 35 37 39 40 42 45 46 48 50 52 53 55 56 58 60 62 66 68 69 71 1
Einführung
Die klassische Analyse von Unternehmensdaten erfolgt in der Regel rückwirkend. In der Vergangenheit aufgelaufene Daten werden zum Beispiel aus einem
Data Warehouse selektiert und auf die gewünschten Fragestellungen hin untersucht. Anhand der Ergebnisse können dann entsprechende Konsequenzen gezogen werden (vgl. [1]).
Aufgrund seiner Vergangenheitsbezogenheit ist dieses Vorgehen oft unbefriedigend, da eine zeitnahe Reaktion auf aktuelle Begebenheiten meistens unmöglich ist. In vielen Anwendungsfällen ist es allerdings erforderlich, zeitkritische Daten in Echtzeit zu verarbeiten, um so auf Ereignisse im Unternehmen
und in der Umwelt rasch reagieren zu können. Beispiele hierfür sind Aktienhandel, Betrugserkennung, zeitkritische Überwachungssysteme oder Sensornetzwerke mit RFID (vgl. [2]).
Die Echtzeitverarbeitung von relevanten Ereignissen, das so genannte Event
Processing1, wird zwar schon seit Jahrzehnten praktiziert, allerdings wurden
hierfür häufig selbst entwickelte Skripte eingesetzt, denen es an Flexibilität und
Standardisierung mangelte (vgl. [1] und [2]). Demgegenüber zielt das in den
letzten Jahren entstandene und stetig wachsende Fachgebiet des Complex
Event Processing (vgl. insbesondere [3]) auf eine kontinuierliche und unmittelbare Verarbeitung einer Vielzahl an Ereignissen ab, die methodisch und technologisch sowie durch den Einsatz dedizierter Softwaretools unterstützt wird, so
dass die notwendige Systematik im Einsatz möglich wird (vgl. [4]).
Im Zuge der Digitalisierung und Vernetzung in der heutigen Zeit sowie einer
einhergehenden Explosion von in Echtzeit zu verarbeitenden Datenmengen
spielen solche Softwaresysteme eine immer wichtigere Rolle (vgl. [5]). Dies unterstreicht nicht zuletzt die Gründung der Event Processing Technical Society
(EPTS)2 zu Beginn des Jahres 2008, der die meisten Anbieter von Event Processing Tools sowie Einzelpersonen aus dem Forschungsumfeld angehören und die
sich für ein gemeinsames Verständnis, die Entwicklung von Standards und für
den Wissenstransfer in diesem Fachgebiet einsetzt (vgl. [6]).
Mehrere ausgereifte Produkte sind bereits auf dem Markt verfügbar, welche für
das Real-Time Monitoring in verschiedenen Anwendungen geeignet sind. In [7]
wird diesen Event Processing Tools mit einem Verweis auf Analystenberichte ein
1
2
Im Text werden die in der Fachliteratur gebräuchlichen englischen Begriffe verwendet
Weitere Informationen zur Event Processing Technical Society (EPTS) unter http://www.ep-ts.com
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
5
1
Einführung
schnelles Wachstum und noch immer nur ein Bruchteil der potentiellen Nutzung im Markt attestiert. Die vorliegende Marktübersicht liefert einen Einblick
in die Funktionalitäten dieser Produkte.
Die Marktübersicht entstand im Rahmen des vom Bundesministerium für Wirtschaft und Technologie (BMWi) geförderten Verbundprojekts iC-RFID (intelligentes Catering mittels Radio Frequency IDentification), dessen Forschungsgegenstand die Integration und Echtzeitsteuerung einer unternehmensübergreifenden Prozesskette am Beispiel Luftfahrtcatering mit Hilfe der RFID-Technologie umfasste. Ein wesentlicher Bestandteil des Projekts war die Konzeption und
Realisierung eines Real-Time Monitoring Dashboards, welches den Prozessfluss
von mit RFID-Tags ausgerüsteten Flugzeugtrolleys visualisiert und bei Vorliegen
von Engpässen automatisierte Benachrichtigungen unmittelbar in Echtzeit auslöst.
Die folgenden Abschnitte dieses Kapitels behandeln die Grundlagen von Ereignis-gesteuerten Architekturen (Event-Driven Architectures, EDA) und Event Processing sowie die wesentlichen Komponenten von Event Processing Tools, um
das Verständnis für die zugrundeliegende Thematik zu vertiefen.
Im zweiten Kapitel wird zunächst die Methodik bei der Erstellung der Marktübersicht erläutert und das verwendete Kriterienraster definiert. Dieses wird anschließend herangezogen, um die derzeit auf dem Markt befindlichen Produkte
einzeln und im Detail zu beschreiben. Als Abschluss folgt eine Zusammenfassung dieser Produkte und ihrer Funktionalitäten in tabellarischer Form.
Das letzte Kapitel enthält schließlich ein Fazit mit einer Darstellung der wesentlichen Erkenntnisse der vorliegenden Marktübersicht.
1.1
Grundlagen
Ein Softwaresystem mit einer Ereignis-gesteuerten Architektur (Event-Driven
Architecture, EDA) unterliegt einem Softwarearchitekturmuster mit lose gekoppelten Komponenten, die lediglich mit Hilfe von Ereignissen (Events) in einer
einfachgerichteten Weise miteinander kommunizieren, ohne dabei Wissen über
das Gesamtsystem zu besitzen (vgl. [5]).
Ein Event bezeichnet hierbei alles, was geschieht oder von dem erwartet wird,
dass es geschieht. Für eine automatisierte Verarbeitung muss ein Event in Form
eines Eventobjekts vorliegen, durch welches es in elektronischer Form repräsentiert wird. Beispiele hierfür sind ein Bestellungseingang, eine Aktienwertänderung oder der Eingang eines Lesevorgangs eines RFID-Sensors (vgl. [8]).
6
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
1
Einführung
Neben dem Eventobjekt, das konzeptionell lediglich eine Benachrichtigung darstellt und keine direkte Anfrage oder Anweisung, besitzt eine EDA noch folgende Elemente (vgl. [6], [7] und [8]):
•
Eventquelle (Event Source, auch Event Emitter oder Event Producer)3: Eine Komponente, die aufgrund von erkannten Informationen Eventobjekte erzeugt und diese an einen angebundenen Eventkanal überreicht,
wird als Eventquelle bezeichnet. Diese kennt den Empfänger des Eventobjekts, die so genannte Eventsenke, nicht, weiß sogar nicht einmal, ob
überhaupt eine existiert, und wenn doch, wie diese das Eventobjekt
nutzt oder weiterverarbeitet. Damit wird eine äußerst lose Kopplung des
Systems realisiert. Eine bedeutende Eigenschaft ist zudem das aktive
Auslösen eines Events durch die Eventquelle unmittelbar zu dem Zeitpunkt seines Auftretens, ohne dass dies von einer anderen Komponente
angefragt wurde.
•
Eventkanal (Event Channel, auch Event Connection, Event Pathway oder
Event Topic): Das Medium, über welches Events von Eventquellen zu
Eventsenken verteilt werden, wird Eventkanal genannt. Dieser kann verschiedene Eventtypen übertragen und auch mehrere Eventquellen und
Eventsenken verbinden, so dass einer oder mehrere Eventströme über
einen Eventkanal verlaufen können. Zudem ist es möglich, dass ein
Event von einer Eventquelle gleichzeitig an mehrere Eventsenken verteilt
wird. Das Wissen über die korrekte Verteilung der Events liegt ausschließlich im Eventkanal.
•
Eventsenke (Event Sink, auch Event Consumer): Eine Eventsenke ist eine
Komponente, die Events über den Eventkanal empfängt und aufgrund
seiner Fachlogik über die Weiterverarbeitung dieser Events entscheidet.
Eine besondere Eigenschaft liegt dabei darin, dass beim Empfang des
Events durch die Eventsenke dieses auch unmittelbar weiterverarbeitet
und beispielsweise die sofortige Ausführung einer Operation ausgelöst
wird. Somit sind Reaktionen in Echtzeit möglich.
Ein Softwaresystem, das einer EDA unterliegt, kann mehrere Eventquellen,
Eventkanäle und Eventsenken besitzen. Zudem kann eine Systemkomponente
auch gleichzeitig die Rolle einer Eventquelle und einer Eventsenke einnehmen.
Dies trifft insbesondere auf die später erläuterten Event Processing-Komponente zu. Durch die lose Kopplung innerhalb einer EDA können neue Event-
3
Im englischen Sprachgebrauch werden verschiedene Synonyme benutzt. Bei den englischen Begriffen beziehen wir uns in erster Linie
auf das herausgegebene Glossar der EPTS (vgl. [8]) und deren jeweils erste Nennungen.
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
7
1
Einführung
quellen und Eventsenken hinzugefügt werden, ohne dass hierfür das Gesamtsystem angepasst werden muss.
Zusammenfassend besitzt eine EDA konzeptionell folgende Eigenschaften (vgl.
[5] und [6]):
•
Informationen werden durch das Versenden von Eventobjekten berichtet. Dies geschieht immer zu den Zeitpunkten, an denen das entsprechende Event auch eingetreten ist.
•
Die Kommunikation erfolgt nach dem Push-Prinzip. Im Gegensatz zum
Pull-Prinzip, bei dem der Empfänger der Nachricht diese zunächst beim
Sender anfragt, geht hier die Initiative von der Eventquelle selbst aus.
•
Reaktionen auf Events erfolgen unmittelbar und in Echtzeit, sobald das
entsprechende Event eingetroffen ist.
•
Die Kommunikation verläuft asynchron und in einfachgerichteter Weise.
Wenn die Eventquelle ein Eventobjekt gesendet hat, fährt es mit den
weiteren Operationen fort, ohne das Event weiterzuverfolgen oder auf
eine Antwort der Eventsenke zu warten.
•
Der Austausch von Eventobjekten erfolgt nach dem Publish/SubscribePrinzip. Typischerweise publiziert (Publish) eine Eventquelle Events an einen Eventkanal (Middleware). Beliebige Eventsenken können einen bestimmten Eventtyp abonnieren (Subscribe) und werden bei Eintreffen eines Events von der Middleware benachrichtigt, um dieses abzuholen.
•
Ein Eventobjekt beinhaltet lediglich Informationen über das eingetretene
Event und enthält somit keine Anweisungen oder Operationen, die bei
der Eventsenke ausgeführt werden sollen. Letztere entscheidet selbst,
welche Aktion als Reaktion auf das Eintreffen des Events ausgeführt
werden soll.
Diese Eigenschaften entsprechen der reinen Form der EDA, wobei in der Praxis
auch Mischformen möglich sind, beispielsweise wenn das Eventobjekt bereits
explizite Anweisungen für die Eventsenke enthält oder direkt an eine bestimmte
Eventsenke adressiert ist. Viel wichtiger ist allerdings die Tatsache, dass durch
den Einsatz Event-basierter Systeme verschiedene Geschäftsprobleme lösbar
sind, deren Anforderungen in einer komplexen Fachlogik, großen Datenvolumina, geringen Latenzzeiten, hoher Skalierbarkeit und erforderlicher Agilität bzw.
einfacher Änderbarkeit der Anwendung bestehen (vgl. [6]).
Dies wird mit Hilfe einer leistungsstarken Technologie realisiert, die sich durch
die Echtzeitverarbeitung einer Vielzahl von Events und deren Beziehungen un-
8
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
1
Einführung
tereinander auszeichnet und als Complex Event Processing bzw. Event Stream
Processing bezeichnet wird.
Hierbei werden auf der Grundlage vordefinierter Regeln (Event Processing Rules) eingehende Events ausgewertet und weiterverarbeitet, so dass entweder
mit einer deduktiven Regel ein neues Event generiert wird, welches lediglich eine Abstraktion der eingegangenen Events darstellt, oder mit einer reaktiven
Regel durch ein Event eine unmittelbare Reaktion ausgelöst wird. Beispiele für
letztere sind etwa der Kauf einer bestimmten Anzahl Aktien, sobald der Kurs
den gewünschten Kaufpreis unterschritten hat oder die sofortige Benachrichtigung eines Verantwortlichen bei einem Transportfehler eines mit einem RFIDTag ausgerüsteten Containers. Als weitere typische Reaktion kann die unmittelbare Interaktion mit Geschäftsprozessen genannt werden (vgl. [4]). Wie bereits
erwähnt, nimmt hier die Event Processing-Komponente sowohl die Rolle der
Eventsenke ein, da sie Events empfängt und verarbeitet, als auch die der Eventquelle, wenn neue Events generiert werden.
Der grundlegende Unterschied zu traditionellen Analysesystemen aus dem Datenbankumfeld ist hierbei die Tatsache, dass eingehende Events während ihres
Passierens kontinuierlich anhand der Event Processing Rules ausgewertet werden und Reaktionen unmittelbar in Echtzeit angestoßen werden können (PushPrinzip). Somit werden anstatt einmaliger Anfragen zu diskreten Zeitpunkten
gegen eine endliche Datenmenge hier durchgehende Anfragen gegen eine
(konzeptionell) unbegrenzte Eventmenge ausgeführt (vgl. [4]).
Man unterscheidet grundsätzlich drei verschiedene Arten von Event Processing
(vgl. [9]):
•
Simple Event Processing: Hierbei wird auf ein bestimmtes Einzelevent eine vordefinierte Reaktion direkt ausgelöst, um Verzögerungszeiten zu
vermeiden. Wenn beispielsweise ein Lagerverwaltungssystem bei zu
niedrigem Bestand eines Artikels ein entsprechendes Event versendet,
kann darauf unmittelbar mit der Initiierung eines zugehörigen Bestellungsprozesses und mit einer Nachricht an einen Verantwortlichen reagiert werden.
•
Event Stream Processing (ESP): Das System analysiert einen oder mehrere
zeitlich geordnete Eventströme (Event Streams) im Zeitablauf und versucht dabei, bedeutsame Events und Relationen zwischen Events in diesen zu identifizieren und darauf zu reagieren. Klassische Beispiele für
ESP sind etwa der automatisierte Handel mit Wertpapieren, bei dem ein
Handelssystem die Aktienkurse im Zeitablauf analysiert und gegebenenfalls automatisierte Kauf- oder Verkaufsorders platziert, sowie die Analyse von RFID-Eventströmen, bei der als Reaktion auf falsche Transportwege beispielsweise entsprechende Alarme versendet werden können.
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
9
1
Einführung
•
Complex Event Processing (CEP): Komplexe Events (Complex Events) sind
Mengen von Events, die in einem meist temporalen, kausalen oder
räumlichen Zusammenhang stehen, aber nicht zwingend vom gleichen
Eventtyp sein müssen. Das System analysiert eine so genannte Eventwolke (Event Cloud), die aus ungeordneten Events besteht, im Hinblick
auf bestimmte Eventmuster (Event Patterns) und löst gegebenenfalls Reaktionen aus. Ein Beispiel für CEP ist ein Intrusion Detection System, das
auf Unstimmigkeiten in laufenden Netzwerkzugriffen reagieren kann,
indem es Events an verschiedenen Stellen im Netzwerk registriert und
untereinander in Beziehung setzt. Ein weiteres Beispiel ist etwa die Betrugserkennung bei Kreditkartenbuchungen.
Event Stream Processing (ESP) und Complex Event Processing (CEP) bauen bei
der Analyse von eingehenden Events im Hinblick auf Event Patterns auf ähnlichen Konzepten auf, wobei ESP stärker auf kontinuierliche und (meist zeitlich)
geordnete Eventströme abzielt, während CEP eher komplexe Operationen über
mehrere Events und Eventtypen im Fokus hat. Eine klare konzeptionelle Abgrenzung ist hierbei allerdings kaum möglich (vgl. [6]).
Das Event Processing wird durch die drei Grundschritte Erkennen, Verarbeiten
und Reagieren charakterisiert, so dass sich daraus drei logische Strukturierungsschichten ergeben: Eventquellen, Eventverarbeitung und Eventbehandlung (vgl.
[6]). Diese werden in Abbildung 1 mit entsprechenden Beispielen veranschaulicht (in Anlehnung an [1], [6] und [7]).
Eventquellen
Eventverarbeitung
Eventbehandlung
Geschäftsprozesse
Event Processing Agent
Dashboards
Datenbanken
Sensoren
Applikationen
…
In-Adapter
Eventmodelle
Eventregeln
Event Processing Engine
• Verarbeitung
von Events
• Erkennung von
Event Patterns
Out-Adapter
Abbildung 1: Logische Strukturierungsschichten beim Event
Processing
Nachrichten
Applikationen
Datenbanken
…
Jedes Event wird durch eine Eventquelle generiert und in das System eingebracht. Hierbei kann es sich beispielsweise um eine Anwendung, verschiedene
Sensoren, ein Datenbanksystem oder einen Geschäftsprozess handeln. Weitere
Beispiele sind RSS-Feeds, Aktienkursticker oder Benutzerinteraktionen. Aufgrund der Vielfältigkeit der möglichen Eventquellen werden die Eventobjekte im
Regelfall auch durch unterschiedliche Eventtypen repräsentiert, so dass diverse
10
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
1
Einführung
Adapter erforderlich sind, um diese in der Eventverarbeitungsschicht empfangen zu können (vgl. [1], [6] und [7]).
Den Kern von Event Processing-Systemen stellt in der Eventverarbeitungsschicht
der so genannte Event Processing Agent (auch Event Processing Component
oder Event Mediator) dar, in dem die Eventmodelle der zu verarbeitenden
Events, die Event Processing Rules sowie die Event Processing Engine zur kontinuierlichen Interpretation dieser Regeln enthalten sind. Hier werden die übergebenen Events z.B. durch Filterung oder Transformation weiterverarbeitet und
im Hinblick auf vordefinierte Event Patterns analysiert (vgl. [6]).
Event Patterns beinhalten beispielsweise logische Operationen (Konjunktionen,
Disjunktionen oder Negationen), Kardinalitäten, fachliche Korrelationen oder
zeitliche Beziehungen zwischen verschiedenen Events. Um endliche Eventmengen analysieren zu können, werden zeitliche oder quantitative Fenster über den
eingehenden Events definiert, z.B. die Events der letzten 2 Minuten oder die
letzten 20 Events, und nur die aktuell in einem solchen Fenster befindlichen
Events in die Auswertung einbezogen (vgl. [4], [6] und [10]).
Bei der Verarbeitung können aus einzelnen atomaren Events (Raw Events) abgeleitete Events (Derived Events) erzeugt werden. Durch Abstraktionen mit Hilfe
verschiedener Operationen, z.B. Durchschnittsberechnungen, können aggregierte Events (Composite Events) entstehen, welche die zugrundeliegenden
Raw Events zusammenfassen, oder auch komplexe Events (Complex Events),
welche die zugrundeliegenden Raw Events nicht beinhalten, sondern anhand
von komplexeren Operationen neue Erkenntnisse aus diesen ziehen (vgl. [6]).
Ein Beispiel für ein Complex Event ist etwa ein gemeldeter Betrugsversuch bei
Kreditkartenbuchungen, welcher sich aus verschiedenen Abbuchungs- oder Bezahlungsevents und deren zeitlichen und räumlichen Abständen untereinander
zusammensetzt.
Sobald eine definierte Event Processing Rule im Hinblick auf ein vorliegendes
Event Pattern greift, wird in der Eventverarbeitungsschicht ein neues Event ausgelöst. Dieses wird entweder für eine Weiterverarbeitung in der Event Processing Engine verwendet (deduktive Regel), was in Abbildung 1 durch den unteren Eventfluss zurück in die Event Processing Engine dargestellt wird, oder führt
zu einer Reaktion durch eine Komponente der Eventbehandlungsschicht (reaktive Regel).
Die Modellierung der entsprechenden Event Processing Rules wird mittels einer
Event Processing Language (EPL) vorgenommen. Bisher hat sich hierfür allerdings noch kein Standard herausgebildet, so dass jede Engine eine spezifische
EPL verwendet (vgl. [2]).
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
11
1
Einführung
Grob lassen sich die verschiedenen Event Processing Languages zumindest in
drei Gruppen kategorisieren (vgl. [4] und [7]):
•
Datenstromorientierte Sprachen: Diese Sprachen basieren auf der bekannten Datenbankanfragesprache SQL (Structured Query Language)
und verfolgen das Prinzip, dass Datenströme, in denen Events als Datensätze enthalten sind, in Relationen transformiert werden, auf denen
dann Anfragen zu jedem Zeitpunkt einer diskreten Zeitachse ausgeführt
werden. Die Anfrageergebnisse werden anschließend wieder in einen
Datenstrom überführt.
•
Regelbasierte Sprachen: Der Ursprung dieser Sprachen liegt in Systemen
für das Business Rule Management. Sie arbeiten meist nach dem Prinzip
»Event – Condition – Action«, d.h. es wird ein Event spezifiziert, das die
Ausführung der Regel triggert, welche bei Vorliegen einer wahren Bedingung eine vordefinierte Aktion unmittelbar auslöst.
•
Imperative Sprachen: Hierbei handelt es sich um spezifische Skriptsprachen, die eigens für das Event Processing entwickelt wurden.
Häufig werden Event Processing-Systeme so entworfen, dass mehrere Event
Processing Agents in der Eventverarbeitungsschicht zusammenarbeiten. Auf
diese Weise lässt sich eine besser skalierte Anwendung realisieren, die auch
physikalisch auf verschiedene Server verteilt werden kann (vgl. [6]). Durch den
Austausch von Events zwischen den verschiedenen Event Processing Agents
entsteht ein so genanntes Event Processing Network (vgl. [3]). Hierfür werden
die Regeln und die Eventmodelle in geeigneter Weise auf die verschiedenen
Event Processing Agents verteilt.
Um die Events, die in der Eventverarbeitungsschicht generiert werden, auch für
die Komponenten der Eventbehandlungsschicht verwertbar zu machen, sind
wiederum diverse Adapter notwendig, um die erforderlichen Eventtypen zu erhalten (siehe Abbildung 1).
In der Eventbehandlungsschicht werden schließlich die Aktionen in Echtzeit
ausgeführt, um das gewünschte Verhalten zu realisieren. Hierbei kann es sich
etwa um das Versenden von Warnungen an verantwortliche Personen, das Auslösen von Alarmen, den Aufruf von Diensten, eine dynamische Anpassung von
Geschäftsprozessen oder die Ausführung von Operationen in einer Anwendung
handeln.
12
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
1
Einführung
Mit solchen Event Processing-Systemen, die in diesem Abschnitt im Detail vorgestellt wurden, können viele Herausforderungen bewältigt werden. Nach [7]
lässt sich die Motivation für die Nutzung von Event Processing-Systemen grob in
folgende Kategorien einordnen:
•
Überwachung: Feststellung von unerwünschtem Verhalten von Systemen oder Prozessen und sofortiges Auslösen von Benachrichtigungen,
wobei die Reaktionen den Nachrichtenempfängern überlassen werden
•
Informationsbereitstellung: personalisierte Übermittlung von Informationen, d.h. die richtige Information zur richtigen Zeit in der richtigen Granularität an den richtigen Abnehmer
•
Dynamisches Betriebsverhalten: sofortiges Auslösen von Geschäftstransaktionen auf Basis von eingehenden Events
•
Aktive Diagnostik: Problemdiagnose durch Auswertung von Symptomen
als eingehende Events
•
Prognostizierung: Treffen von Vorhersagen auf Basis der bisher eingegangenen Events und Verhinderung von vorausgesagten Events oder
zumindest Abschwächung ihrer Wirkung
Bei Vorliegen eines oder mehrerer dieser Beweggründe lohnt sich möglicherweise der Einsatz von Event Processing Tools, deren Komponenten nachfolgend
allgemein beleuchtet werden.
1.2
Komponenten von Event Processing Tools
Dedizierte Event Processing Tools ermöglichen die Umsetzung eines Event Processing-Systems, wie es im vorherigen Abschnitt beschrieben wurde. Solche
Tools bestehen aus verschiedenen Komponenten auf der Entwicklungs- und
Ausführungsebene, die nachfolgend aufgelistet und erläutert werden. Dabei
werden je nach Produkt mehr oder weniger dieser Komponenten und in unterschiedlichen Ausprägungen angeboten.
•
Event Processing Engine: Der Kern jedes Event Processing-Systems auf
Ausführungsebene ist die Event Processing Engine, mit welcher das
Complex Event Processing bzw. Event Stream Processing letztlich realisiert wird. Diese versteht die systemeigene Event Processing Language
(EPL), mittels derer die Event Processing Rules definiert werden. Bei vielen Produkten sind besonders hohe Verarbeitungsgeschwindigkeiten
und die Möglichkeit der Skalierung von Event Processing Engines für eine Hochverfügbarkeit vorhanden.
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
13
1
14
Einführung
•
Adapter: Viele Event Processing Tools liefern bereits eine unterschiedliche Anzahl an vorgefertigten Adaptern mit, damit die Event Processing
Engine mit den Eventquellen und den Komponenten der Eventbehandlung kommunizieren kann. Beispiele sind etwa Adapter für verschiedene
Messaging Bus-Systeme, Datenbanken, Web Service-Schnittstellen, Dateien oder spezielle Anwendungssysteme. Meist besteht auch die Möglichkeit, eigene Adapter mittels einer Programmierschnittstelle (Application Programming Interface, API) selbst zu entwickeln.
•
Event Monitor: Die meisten Produkte beinhalten eine Konsole zur einfachen Anzeige der ablaufenden Events, zum Beispiel in Form eines Logs,
so dass eine Echtzeitverfolgung zur Laufzeit möglich ist.
•
Dashboard: Mit Hilfe von dedizierten Visualisierungsanwendungen können Events auch graphisch dargestellt werden. Dafür stehen bei vielen
Event Processing Tools in der Regel eine Vielzahl an unterschiedlichen
Diagrammtypen zur Verfügung, die mit Events verknüpft werden können und zur Laufzeit per Push-Prinzip aktualisiert werden. Gebräuchlich
sind unter anderem Zähler, Torten-, Balken- und Liniendiagramme, Tachometer, Ampeln und Fortschrittsbalken. Der Benutzer kann sich auf
diese Weise schnell eine Übersicht über das derzeit ablaufende Geschehen verschaffen. Häufig kann der aktuelle Status auch mit historischen
Daten aus Datenbanken angereichert werden, um zusätzliche Informationen zu gewinnen. Allerdings enthalten nicht alle Event Processing
Tools derartige Visualisierungskomponenten. In diesen Fällen kann eventuell eine vorgefertigte Dashboardapplikation eines anderen Anbieters
eingesetzt werden, oder die Events werden an eigenentwickelte Lösungen zur Visualisierung übergeben.
•
Entwicklungs- und/oder Modellierungsumgebung: Viele auf dem Markt
angebotenen Event Processing Tools enthalten Entwicklungsumgebungen für die Formulierung der Event Processing Rules in der jeweiligen
Event Processing Language (EPL) der verwendeten Laufzeitumgebung.
Teilweise können Regeln sogar graphisch modelliert werden, welche
dann intern in die EPL überführt werden. Einige Lösungen setzen ausschließlich auf die Code-basierte Definition von Regeln mittels einer EPL,
einige bieten nur ein graphisches Interface für diesen Zweck an, manche
Produkte beides. Auch für die Gestaltung von Dashboards werden zum
Teil Modellierungstools bereitgestellt, mit denen die Platzierung der Visualisierungselemente und die Verknüpfung ihrer Werte mit den entsprechenden Events und deren Attributen benutzerfreundlich durchgeführt werden können.
•
Auswertungs- und Analysetools: Mit Hilfe von Reportgeneratoren können Auswertungen von Events erzeugt werden. Teilweise sehen Event
Processing Tools auch entsprechende Event Datenbanken vor, in denen
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
1
Einführung
eine Historie relevanter Events abgelegt werden kann, um ausführliche
Analysen durchführen zu können. Erzeugte Reports können zum Teil auf
Remotesystemen oder als Dokument im PDF- oder HTML-Format exportiert werden. Nicht alle Lösungen bieten diese Komponente an, so dass
die Events von der Event Processing Engine an externe Applikationen
übergeben werden müssen, wenn derartige Analysen durchgeführt
werden sollen.
•
Enterprise Service Bus (ESB): Mit Hilfe eines Enterprise Service Bus (ESB)
können Nachrichten zwischen Quelle und Ziel transportiert, transformiert und geroutet werden. Dies können innerhalb einer EDA beispielsweise Events oder von der Event Processing Engine ausgelöste Reaktionen sein, aber auch Web Service Aufrufe aus einem automatisierten Geschäftsprozess heraus. Viele Event Processing Tools sehen zumindest die
Anbindung an einen ESB vor, um Events zu lesen und abzusetzen. Manche Lösungen bieten sogar eine ESB-Implementation im Rahmen des
Produktes an bzw. offerieren diese in ihrer Produktpalette. Die Anbindung an einen ESB ist für das Event Processing jedoch nicht zwingend
notwendig, denn Events können auch direkt (zum Beispiel mittels eines
selbstentwickelten Adapters) an die Event Processing Engine oder eine
Eventsenke gesendet werden.
Wie bereits erwähnt, sind je nach Produkt mehr oder weniger dieser Komponenten in verschiedenen Ausprägungen vorhanden. Die Marktübersicht im
nächsten Kapitel liefert einen Überblick über die Funktionalitäten der zur Zeit
am Markt befindlichen Event Processing Tools. Dabei werden sowohl kommerzielle Produkte betrachtet, als auch konkurrenzfähige Open Source-Produkte.
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
15
2
Marktübersicht
In diesem Kapitel werden die derzeit bedeutsamsten Event Processing Tools in
einer Marktübersicht gegenübergestellt. Zunächst wird die Vorgehensweise bei
der Erstellung der Marktübersicht erläutert und das verwendete Kriterienraster
definiert. Anschließend werden die am Markt verfügbaren Produkte einzeln im
Detail beschrieben und zum Abschluss des Kapitels in einer tabellarischen Übersicht zusammengefasst.
2.1
Vorgehensweise bei der Erstellung der Marktübersicht
Die verfügbaren Produkte für das Event Processing wurden durch OnlineRecherche und durch das Studium einschlägiger Fachliteratur identifiziert. Anschließend wurden diese bezüglich der in Abschnitt 1.2 behandelten Komponenten und insbesondere des im folgenden Abschnitt spezifizierten
Kriterienrasters untersucht. Die Informationen wurden im Wesentlichen mittels
Online-Recherche auf den Webseiten der Anbieter zusammengetragen und
zum Teil durch das Studium der verfügbaren Dokumentation ergänzt.
Eine detaillierte Evaluation der Produkte mittels Testinstallationen oder ausführlicher Befragungen der Anbieter war im Rahmen dieser Betrachtung nicht vorgesehen und wurde daher auch ausdrücklich nicht durchgeführt. Informationen, die nach intensiver Online-Recherche nicht verfügbar waren, bleiben somit
unberücksichtigt.
Die Erstellung der Marktübersicht erfolgte im Zeitraum von Januar bis März
2010. Von August bis Oktober 2010 wurde die Marktübersicht überarbeitet
und den Produktanbietern zur Durchsicht zugesendet.
2.2
Kriterienraster
Die Darstellung orientiert sich an folgendem Kriterienraster, das größtenteils auf
den in Abschnitt 1.2 prinzipiell erläuterten Komponenten von Event Processing
Tools basiert:
•
Allgemeine Daten zum Anbieter und Produkt:
-
•
16
Name des Anbieters
Name des Produktes
Website
Vom Produkt unterstützte Betriebssysteme
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
•
Art von Softwarelizenz, der das Produkt unterliegt (kommerziell oder
Open Source)
•
Softwareart des Produktes mit der Unterscheidung in Event Processing
Engine und Komplettsystem, wobei sich letzteres auf das Vorhandensein
zusätzlicher Komponenten über die reine Eventverarbeitung hinaus bezieht (siehe auch Abschnitt 1.2)
•
Branchenfokus, sofern ein solcher explizit genannt wird
•
Verbreitung des Produktes, sofern dazu eine Angabe gemacht werden
kann
•
Referenzkunden, sofern diese genannt werden (gegebenenfalls auszugsweise), wobei vorrangig Unternehmen im deutschsprachigen Raum
aufgeführt werden
•
Vorhandensein einer Engine für Event Stream Processing und/oder
Complex Event Processing: in der textuellen Beschreibung werden diese
Engines meist im Detail beschrieben, wobei auch Angaben zur Skalierbarkeit und Verarbeitungsgeschwindigkeit gemacht werden, falls dies
möglich ist; ein besonderer Augenmerk wurde auch auf Art und Umfang der mitgelieferten Adapter gelegt, von denen die Wichtigsten aufgeführt werden
•
Sprachtyp der Event Processing Language (EPL), nach den im vorhergehenden Abschnitt genannten drei Kategorien:
-
Datenstromorientiert
Regelbasiert
Imperativ
•
Vorhandensein einer mit den üblichen Funktionalitäten ausgestatteten
integrierten Entwicklungsumgebung (Integrated Development Environment, IDE) für die Entwicklung von Event Processing Rules in einer EPL
•
Vorhandensein einer Möglichkeit für die graphische Modellierung von
Event Processing Rules: das Kriterium gilt als erfüllt, wenn mindestens
entsprechende Assistenten zur Regelerstellung vorhanden sind; manche
Produkte sehen aber auch ausgereifte graphische Modellierungstools
(beispielsweise mit Drag-and-Drop-Funktionalität) vor, was entsprechend
in der textuellen Beschreibung erwähnt wird
•
Möglichkeiten für Debugging oder Simulation: das Kriterium gilt als erfüllt, wenn mindestens die Möglichkeit vorhanden ist, EPL Code in der
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
17
2
Marktübersicht
IDE zu debuggen und/oder Testanfragen an die Event Processing Engine
zu senden; manche Lösungen sehen aber auch sehr komplexe Mechanismen zur Durchführung von Simulationen vor, was entsprechend im
Text vermerkt wird
2.3
•
Vorhandensein einer Konsole (Event Monitor) zur textuellen Darstellung
der von der Event Processing Engine registrierten Events
•
Vorhandensein eines Dashboards zur graphischen Visualisierung von
Events in Echtzeit, gegebenenfalls mit der Möglichkeit zur Durchführung
weiterführender Analysen (zum Beispiel mittels Drill-DownFunktionalität); sofern angegeben, werden die wichtigsten zur Verfügung gestellten Diagrammtypen in der textuellen Beschreibung aufgeführt
•
Möglichkeit, das Layout und/oder das Verhalten von Dashboards über
eine graphische Benutzeroberfläche zu gestalten, zum Beispiel mittels
Widgets
•
Vorhandensein einer Event Datenbank, in der Events und/oder Alerts gespeichert werden können, zum Beispiel für die spätere Durchführung
von Auswertungen
•
Möglichkeit, Events zum Zwecke der Weiterverarbeitung zu exportierten: das Kriterium gilt als erfüllt, wenn mindestens der Export in eine externe Datenbank oder in eine Datei (zum Beispiel CSV) möglich ist
•
Vorhandensein von Werkzeugen für die Generierung von Reports oder
Auswertungen: sofern angegeben, werden die zur Verfügung gestellten
Exportmöglichkeiten für die generierten Reports (zum Beispiel PDF,
HTML, Microsoft Word) in der textuellen Beschreibung angeführt
•
Vorhandensein einer Anbindung an einen Enterprise Service Bus (ESB):
das Kriterium gilt als erfüllt, wenn mindestens eine bedeutsame ESBImplementation unterstützt wird
Produktbeschreibungen
Insgesamt wurden 20 Lösungen betrachtet, die als Mindestanforderung eine
Event Processing Engine enthalten müssen. Aufgrund des Umstands, dass einige Produkte keine Visualisierungskomponente enthalten, wurde zusätzlich die
Dashboardsoftware RTView in die Betrachtung aufgenommen, da sich in Verbindung mit einer reinen Event Processing Engine damit ein vollständiges RealTime Monitoring System realisieren lässt.
18
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Folgende Produkte wurden untersucht, wobei sich die Reihenfolge aus einer alphabetischen Sortierung nach den Produktnamen ergibt und die reine
Dashboardlösung RTView den Abschluss der Betrachtung bildet:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Sybase Aleri Streaming Platform / CEP
Progress Apama
TIBCO BusinessEvents & Spotfire
ruleCore CEP Server
Truviso Continuous Analytics
UC4 Decision & UC4 Insight
JBoss Drools Fusion
Oracle EDA Suite
EsperTech Esper
Event Zero Event Processing Network
StreamBase Event Processing Platform
Open ESB Intelligent Event Processor (IEP)
Vitria M3O Analytic Server & M3O Operations Book
Realtime Monitoring RTM Analyzer
Informatica Rulepoint
Starview Smart Enterprise Platform
Microsoft StreamInsight
Axway Synchrony Sentinel
West Global Vantify
IBM WebSphere Business Events
SL RTView
Das im Forschungsumfeld häufig erwähnte Event Processing Tool AMiT (Active
Middleware Technology)4 von IBM wird in dieser Marktübersicht nicht untersucht, da es sich hierbei um ein Forschungsprodukt handelt, zu dem kein Produktblatt und nur wenig Informationen verfügbar sind.
4
Weitere Informationen unter https://www.research.ibm.com/haifa/dept/services/soms_ebs.html
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
19
2
Marktübersicht
2.3.1
Sybase Aleri Streaming Platform / CEP
Name des Anbieters
Sybase
Name des Produktes
Aleri Streaming Platform / CEP
Website
20
http://www.sybase.com/products/financialservicessolutions/
complex-event-processing
Unterstützte Betriebssysteme
Windows, Linux, Solaris
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber Financial Services Solution, RFID, CRM und Telekommunikation explizit genannt
Verbreitung
Stark verbreitet (vgl. [11] - gemeinsam
mit Coral8, das mittlerweile in Sybase
CEP übergegangen ist)
Referenzkunden
Commerzbank, Barclays, ING
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja (Aleri Studio) /
Nein (CEP Studio)
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Ja (SL RTView lizenziert)
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
Nein
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung der Event Processing Engine
Sybase hat neben der Aleri Streaming Platform die ehemalige Coral8 CEPEngine (unter dem Namen Sybase CEP) in ihre Produktpalette integriert, die
früher als eigenständige Produkte auf dem Markt angeboten wurden.
Bei der Aleri Streaming Platform stehen Adapter für verschiedene Messagingsysteme (z.B. TIBCO Rendezvous, IBM WebSphere MQ und JMS), Datenbanken
(via ODBC und JDBC), Sockets, Dateien, SMTP, XML, CSV und weitere zur Verfügung, insbesondere auch spezielle Adapter für Finanzmarktdaten. Mittels
APIs für C++, Java und .NET können auch eigene Adapter entwickelt werden.
Auch Sybase CEP stellt ähnlich viele Adapter zur Verfügung wie die Aleri
Streaming Platform. Zudem können ebenfalls eigene Adapter mit C/C++, C#,
Java, Perl und Python entwickelt werden.
Die Verarbeitungsgeschwindigkeit wird mit einigen 100.000 Events (Aleri
Streaming Platform) bis zu einer Million Events (Sybase CEP) pro Sekunde angegeben. Die Reaktionszeit soll dabei im Millisekundenbereich liegen.
Für die Anwendung auf dem Kapitalmarkt ist eine Integration mit der Marktdatenplattform Sybase RAP möglich, einer auf einen hochvolumigen Durchsatz
mit mehr als 100.000 Nachrichten pro Sekunde spezialisierten Lösung, die
Echtzeitverarbeitung und analytische Funktionen ermöglicht.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Für die Aleri Streaming Engine kommt die sogenannte Aleri SQL zum Einsatz,
die eine Real-Time Erweiterung für SQL zur Verfügung stellt. Daneben kann die
Skriptsprache Aleri SPLASH verwendet werden, die eine Java-ähnliche Syntax
besitzt. Im Aleri Studio können Event Processing Rules zudem auch graphisch
modelliert werden (vgl. Abbildung 25).
Die für die Sybase CEP Engine verwendete Continuous Computation Language
(CCL) ist ebenfalls SQL-basiert mit den erforderlichen Erweiterungen für kontinuierliche Datenanfragen. Ein BPEL-to-CCL-Compiler wird für die Verarbeitung
von in BPEL dargestellten Geschäftsprozessen eingesetzt. Für die Entwicklung
5
Abbildung entnommen aus http://www.sybase.com/files/Data_Sheets/Sybase_Aleri_StreamingPlatform_ds.pdf
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
21
2
Marktübersicht
steht eine Eclipse-basierte IDE zur Verfügung (Sybase CEP Studio), die allerdings
keine graphische Modellierung vorsieht.
Abbildung 2: Modellierung mit dem
Sybase Aleri Studio
Beschreibung des Dashboards
Mit Sybase Dashboard, einer Komponente, welche die Dashboardlösung SL
RTView (siehe Abschnitt 2.3.21) lizensiert, können individuelle Dashboards graphisch modelliert werden. Es steht eine Vielzahl von verschiedenen graphischen
und textuellen Darstellungskomponenten zur Verfügung, unter anderem Torten-, Balken- und Liniendiagramme. Die Selektion und Filterung von Daten
durch den Endbenutzer ist innerhalb der Anwendung möglich.
Beschreibung der Ausgabe und Reportingfunktionen
Aleri bietet ein Datenbank-Interface nach außen hin an, so dass als von externen Funktionen als In-Memory-Datenbank genutzt werden kann. Der Zugriff
auf die Datenströme erfolgt dabei über JDBC und ODBC.
22
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
2.3.2
Marktübersicht
Progress Apama
Name des Anbieters
Progress
Name des Produktes
Apama
Website
http://web.progress.com/de/apama/index.html
Unterstützte Betriebssysteme
Windows, Linux, Solaris
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber insbesondere für Trading,
Location-Based Services und Logistik
geeignet
Verbreitung
Sehr stark verbreitet, ca. 20% Marktanteil bei CEP Software im Jahr 2008
(vgl. [12])
Referenzkunden
Deutsche Bank, ABN Amro, SEB
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Imperativ
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Ja (SL RTView lizenziert)
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
23
2
Marktübersicht
Beschreibung der Event Processing Engine
Die Event Processing Engine wird vom Anbieter als Correlator bezeichnet. Das
Apama Integration Adapter Framework (IAF) stellt die Anbindung der Architektur an Eventquellen und -senken sicher. Neben einigen finanzmarktspezifischen
Datenformaten kann IAF auch mit ODBC/JDBC- und KDB+Datenbankanbindungen sowie RFID-Signalen umgehen und beherrscht auch
verschiedene Nachrichtentransportprotokolle wie TCP, UDP, CORBA, Java RMI
und ESB-Anbindungen (JMS und TIBCO Rendezvous). Sollte dies nicht ausreichen, können mittels einer API auch individuelle Adapter in Java, C oder C++
entwickelt werden.
Die Verarbeitungsgeschwindigkeit des Correlators wird mit mehreren 10.000
Events pro Sekunde angegeben, während die Reaktionszeit im Sub-Millisekundenbereich liegen soll. Eine Steigerung der Skalierung ist durch Parallelschaltung möglich.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Für die Definition von Event Processing Rules wird die imperative Skriptsprache
MonitorScript genutzt. Daneben kann alternativ auch Java verwendet werden.
Mit dem Apama Studio steht eine Eclipse-basierte Entwicklungsumgebung zur
Verfügung, mit der auch eine graphische Modellierung möglich ist (vgl. Abbildung 36), wobei eine interne Transformation in MonitorScript vorgenommen
wird. Auch werden Debugging- und Profiling-Funktionalitäten bereitgestellt.
Abbildung 3: Entwicklung mit dem
Progress Apama
Studio
6
Abbildung entnommen aus http://web.progress.com/docs/datasheets/apama/Apama_EventModeler.pdf
24
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung des Dashboards
Mit Hilfe des Apama Dashboard Builders, der die Dashboardlösung SL RTView
(siehe Abschnitt 2.3.21) lizensiert, können individuelle Dashboards graphisch
modelliert werden. Es stehen etwa 120 verschiedene Komponenten (zum Beispiel Zähler oder vielfältige Diagrammtypen) zur Verfügung, die von der Event
Processing Engine übergebene Events in Echtzeit darstellen können. Daten
können dabei auch gefiltert, aggregiert und konvertiert werden. Die Anzeige ist
sowohl im Client als auch online über einen Webbrowser möglich. Ein beispielhaftes Apama Dashboard ist in Abbildung 47 dargestellt.
Abbildung 4: Modellierung mit dem
Progress Apama
Dashboard Builder
Beschreibung der Ausgabe und Reportingfunktionen
Events können in der Datenbank, dem so genannten Event Store, abgelegt und
mit Hilfe der im Research Studio enthaltenen Analysewerkzeuge ausgewertet
werden.
7
Abbildung entnommen aus http://web.progress.com/de/apama/dashboard-builder.html
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
25
2
Marktübersicht
2.3.3
TIBCO BusinessEvents & Spotfire
Name des Anbieters
TIBCO
Name des Produktes
BusinessEvents (Event Processing Engine) & Spotfire (Dashboard)
Website
26
http://www.tibco.com/products/businessoptimization/complex-event-processing/businessevents
Unterstützte Betriebssysteme
Windows, Linux, Solaris, HP UX
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber Produktion, Verkauf,
Verteidigung und Gesundheit explizit
genannt
Verbreitung
Sehr stark verbreitet, ca. 40% Marktanteil bei CEP Software im Jahr 2008
(vgl. [12])
Referenzkunden
Air France, Vodafone, Markant
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Regelbasiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
K.A.
Event Monitor
Ja
Dashboard
Ja (Spotfire)
Graphische Modellierungstools für
Dashboard
Ja (Spotfire)
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
K.A.
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung der Event Processing Engine
Als Adapter werden Web Services und ESB-Implementationen wie JMS und
TIBCO Rendezvous unterstützt. Ferner stehen Datenbankanbindungen über
JDBC zur Verfügung.
Mehrere Event Processing Engines können zur Erhöhung der Verarbeitungsgeschwindigkeit parallel geschaltet werden.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Es kommt eine SQL-ähnliche Syntax als Grundlage für die EPL zum Einsatz. Assistenten helfen Business Usern bei der Erstellung entsprechender Regeln.
Beschreibung des Dashboards
Mit Hilfe der TIBCO Spotfire Komponente können Events visualisiert werden. Es
handelt sich dabei um eine eigene Analyse- und Visualisierungskomponente,
die allerdings an TIBCO BusinessEvents angebunden werden kann. Es kann dabei auf eine Vielzahl an unterschiedlichen Diagrammtypen zurückgegriffen
werden, unter anderem Graphen, Torten-, Balken- und Liniendiagramme, Karten usw. Die Dashboards können graphisch modelliert werden. Abbildung 58
zeigt ein exemplarisches TIBCO Spotfire Dashboard.
Abbildung 5: Exemplarisches TIBCO
Spotfire Dashboard
8
Abbildung entnommen aus http://spotfire.tibco.com/products/spotfire-professional/exploratory-data-analysis.aspx
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
27
2
Marktübersicht
Beschreibung der Ausgabe und Reportingfunktionen
Events können in einer Datenbank abgelegt werden und damit für beliebige
Auswertungen weiterverwendet werden.
28
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
2.3.4
Marktübersicht
ruleCore CEP Server
Name des Anbieters
ruleCore
Name des Produktes
CEP Server
Website
http://www.rulecore.com/
Unterstützte Betriebssysteme
Alle (Software as a Service)
Lizenztyp
Kommerziell
Softwareart
Event Processing Engine
Branchenfokus
Keiner, aber Mobile Asset Tracking
(Tracking von Fahrzeugen, GPSGeräten und Handys) als wichtiges
Anwendungsgebiet genannt
Verbreitung
K.A.
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Regelbasiert
Entwicklungsumgebung für EPL
Nein
Graphische Modellierungstools für
EPL
Nein
Debugging und Simulation
Ja
Event Monitor
Nein
Dashboard
Nein
Graphische Modellierungstools für
Dashboard
Nein
Event Datenbank
Nein
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Nein
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
29
2
Marktübersicht
Beschreibung der Event Processing Engine
Die Nutzung des ruleCore CEP Servers wird als Dienst über das Internet (Software as a Service) angeboten. Zudem können durch ein sogenanntes OEM Kit
eigene, verteilte Anwendungen entwickelt werden, die auf dem ruleCore CEP
Server basieren.
Adapter sind unter anderem für JMS, Web Services und REST vorhanden. Sämtliche ein- und ausgehenden Events werden in XML dargestellt. Das Modul für
die Aufnahme und Ausgabe von Events basiert auf dem Open Source Enterprise
Service Bus Mule ESB.
Die Event Processing Engine kann auf mehrere Server verteilt werden, so dass
eine skalierbare Anwendung möglich ist.
Beschreibung der Event Processing Language
Die von ruleCore verwendete deklarative Abfragesprache Reakt ist eine regelbasierte EPL, die auf XML basiert. Eine Entwicklungsumgebung ist nicht vorgesehen, allerdings vertreibt ruleCore unter dem Namen FleetNotice eine Lösung für
das Echtzeit-Tracking von Fahrzeugflotten, die auf dem ruleCore CEP Server basiert und eine webbasierte Benutzerschnittstelle für die Regeldefinition basierend auf Formularen bereitstellt. Diese kann auch generisch für die Erstellung
von Event Processing Rules für den ruleCore CEP Server genutzt werden.
30
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
2.3.5
Marktübersicht
Truviso Continuous Analytics
Name des Anbieters
Truviso
Name des Produktes
Continuous Analytics
Website
http://www.truviso.com/continuous-analyticstechnology.php
Unterstützte Betriebssysteme
Linux
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber Web Analytics,
Advertizing Analytics, Video Analytics
sowie Trading explizit genannt
Verbreitung
K.A.
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Nein
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
K.A.
Debugging und Simulation
K.A.
Event Monitor
K.A.
Dashboard
Ja
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Nein
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
31
2
Marktübersicht
Beschreibung der Event Processing Engine
Als Adapter werden JMS, SOAP, REST, XML, CSV und Textdateien mit Rohdaten unterstützt sowie Datenbankanbindungen über JDBC.
Die so genannte TruSQL Engine verarbeitet sowohl Datenströme in Echtzeit, als
auch persistierte Daten, so dass sowohl historische als auch vorausschauende
Analysen ermöglicht werden. Der Hersteller wirbt mit einer Verarbeitungsperformance von 500.000 Datensätzen pro Sekunde.
Beschreibung der Event Processing Language
Als Event Processing Language kommt SQL zum Einsatz, die für kontinuierliche
Datenanfragen erweitert wurde, so dass sich Zeit- und Datenfenster auf den
Eventströmen ausdrücken lassen. Kontinuierliche Datenanfragen erzeugen weitere auswertbare Datenströme.
Beschreibung des Dashboards
Das so genannte TruView Framework ermöglicht die Erstellung von anpassbaren Dashboards, die als Webanwendungen auf Adobe Flex basieren und anhand der kontinuierlichen Datenanfragen in Echtzeit aktualisiert werden.
Beschreibung der Ausgabe und Reportingfunktionen
Neben der Visualisierung von Daten in einem Dashboard sind auch Alarme in
Form von SMS, E-Mail oder per SNMP möglich und es können andere Systeme
getriggert werden.
Eine Reportingfunktionalität ist vorhanden, wird allerdings nicht näher beschrieben.
32
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
2.3.6
Marktübersicht
UC4 Decision & UC4 Insight
Name des Anbieters
UC4 Software
Name des Produktes
UC4 Decision (Event Processing Engine) & UC4 Insight (Dashboard)
Website
http://www.uc4.com/de/produkte-loesungen/predictivepattern-engine/uc4-decision.html
Unterstützte Betriebssysteme
Windows
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber Intelligent Service Automation, Application Performance Assurance und Service Level Management beispielhaft als Anwendungsgebiete genannt
Verbreitung
Stark verbreitet (vgl. [11])
Referenzkunden
SBB, T-Systems
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Regelbasiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Ja (UC4 Insight)
Graphische Modellierungstools für
Dashboard
Ja (UC4 Insight)
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
33
2
Marktübersicht
Beschreibung der Event Processing Engine
UC4 Decision besitzt eine skalierbare Event Processing Engine. Adapter sind für
MSMQ (Microsoft Message Queuing Service), IBM WebSphere MQ, TIBCO Rendezvous, JMS, Web Services und Sockets vorgesehen. Zudem können Dateien,
POP3-Nachrichten und RSS-Feeds ausgelesen und als Events genutzt werden.
Datenbankanbindungen existieren für Microsoft SQL Server, IBM DB2, Oracle,
MySQL und ODBC. Die Entwicklung eigener Adapter ist ebenfalls möglich.
Die Verarbeitungsgeschwindigkeit wird mit mehreren Tausend Events pro Sekunde angegeben.
Für die Administration steht eine graphische Konsole zur Verfügung. Zudem
können vordefinierte Szenarien mit dem Simulation Studio simuliert und getestet werden inklusive der Visualisierung auf einem Real-Time Dashboard.
Beschreibung der Event Processing Language
Das Modelling Studio sieht die graphische Modellierung von Regeln, Eventstrukturen und -korrelationen vor. Die Code-basierte Programmierung in einer
EPL ist nicht vorgesehen. Abbildung 6 zeigt beispielhaft die Modellierungsumgebung von UC4 Decision.
Abbildung 6: Modellierung mit UC4
Decision
34
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung des Dashboards
Mit UC4 Insight steht ein Real-Time Dashboard zur Verfügung, welches als eigenständiges Produkt auch für Business Intelligence und weiterführende Analysen, beispielsweise Fehler-Ursachen-Analysen, eingesetzt werden kann. Das
Dashboard ist ausgerichtet auf die Visualisierung von Events und besitzt somit
neben verschiedenen Diagrammtypen wie Punkt-, Linien- oder Treppendiagrammen auch Visualisierungsmöglichkeiten für Event-Cluster und 3D-EventTunnel. Die beispielhafte Darstellung eines Event Tunnels mit UC4 Insight ist in
Abbildung 7 dargestellt.
Abbildung 7: Beispielhafte Event
Tunnel-Darstellung
mit UC4 Insight
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
35
2
Marktübersicht
2.3.7
JBoss Drools Fusion
Name des Anbieters
JBoss
Name des Produktes
Drools Fusion
Website
36
http://www.jboss.org/drools/drools-fusion.html
Unterstützte Betriebssysteme
Alle mit Java Runtime
Lizenztyp
Open Source
Softwareart
Event Processing Engine
Branchenfokus
Keiner, aber Trading und Bezahlsysteme als beispielhafte Anwendungsgebiete genannt
Verbreitung
Drools 5.0 ca. 2.000 Downloads
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Regelbasiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Nein
Debugging und Simulation
Ja
Event Monitor
Nein
Dashboard
Nein
Graphische Modellierungstools für
Dashboard
Nein
Event Datenbank
Nur Anbindung
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Nein
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung der Event Processing Engine
Drools ist eine sogenannte Business Logic Integration Plattform, die als Open
Source-Produkt der Apache Software License (ASL) unterliegt. Sie besteht aus
den vier Komponenten Guvnor (Knowledge Repository), Expert
(Geschäftsregelengine), Flow (Geschäftsprozessengine) und Fusion (Event Processing Engine). Drools Fusion kann zusammen mit den anderen Komponenten
verwendet werden, was allerdings nicht erforderlich ist.
Durch die Integration von Drools Fusion mit dem Integration Framework Apache Camel steht eine Vielzahl von Eingabeformaten und Transportprotokollen
für Events zur Verfügung. Unter anderem werden HTTP, JMS, Apache
ActiveMQ, JBI, Apache MINA und verschiedene Datenformate, wie beispielsweise CSV, JSON (JavaScript Object Notation), XML, SOAP und JAXB (Java
Architecture for XML Binding), unterstützt.
Drools Fusion bietet zudem eine Integration mit dem Spring und dem OSGi
Framework an.
Beschreibung der Event Processing Language
Die verwendete EPL ist eine deklarative Sprache, die Produktionsregeln auf
Events anwenden kann. Für die Entwicklung der Regeln steht eine Eclipsebasierte IDE zur Verfügung, die in Abbildung 89 dargestellt ist.
Abbildung 8: Entwicklung mit JBoss
Drools
9
Abbildung entnommen aus http://www.jboss.org/drools/drools-fusion.html
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
37
2
Marktübersicht
2.3.8
Oracle EDA Suite
Name des Anbieters
Oracle
Name des Produktes
EDA Suite
Website
38
http://www.oracle.com/us/technologies/soa/edasuite/index.html
Unterstützte Betriebssysteme
Windows, Linux, Solaris, HP-UX, AIX
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber Trading, Telekommunikation, Handel, Produktion und Verwaltung explizit genannt
Verbreitung
Sehr stark verbreitet (vgl. [11])
Referenzkunden
Monster.com, NH Hotels
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Ja
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung der Event Processing Engine
Oracle CEP basierte ehemals auf der Esper Event Processing Engine, verwendet
mittlerweile aber eine eigene Engine. Als Adapter werden JMS und HTTP sowohl für eingehende als auch ausgehende Events unterstützt. Eine Datenbankanbindung kann über JDBC realisiert werden. Für die Entwicklung eigener
Adapter werden entsprechende APIs bereitgestellt.
In Bezug auf Hochverfügbarkeit ist ein Clustering von CEP-Instanzen möglich.
Auch ein ausfallsicherer, verteilter Datencache kann mittels Oracle Coherence
zur Verfügung gestellt werden.
Die Antwortzeit gibt Oracle im Mikrosekundenbereich an.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Die als Oracle Continuous Query Language (CQL) bezeichnete Programmiersprache ist SQL-basiert. Eine auf Eclipse aufsetzende Entwicklungsumgebung
wird für die Entwicklung bereitgestellt, mit welcher eine graphische Modellierung der CQL möglich ist (vgl. Abbildung 910). Mit Hilfe von mitgelieferten Assistenten verspricht Oracle eine schnelle Entwicklung EDA-basierter Anwendungen.
Abbildung 9: Modellierung mit der
Oracle EDA Suite
10
Abbildung entnommen aus http://download.oracle.com/docs/cd/E14571_01/doc.1111/e14476/overview.htm
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
39
2
Marktübersicht
Beschreibung des Dashboards
Der CEP Visualizer dient zur Anzeige von Events und kann sowohl von Entwicklern als auch von Administratoren und Endbenutzern verwendet werden. Die
Komponente setzt auf Adobe Flex auf und kann damit über das Web genutzt
werden.
Für ein weiterführendes Monitoring bietet Oracle eine Komponente für Business Activity Monitoring (BAM) an, die über vielfältige Möglichkeiten zur Anzeige von Events verfügt. Sie kann über JMS, JCA oder Web Services angebunden werden. Eine Vielzahl von Diagrammtypen wird unterstützt, unter anderem
Torten- und Balkendiagramme, sowie Zähler. Oracle BAM ist eine webbasierte
Anwendung, die Nutzung der BAM-Komponente ist derzeit allerdings nur mit
dem Microsoft Internet Explorer möglich. Abbildung 1011 zeigt ein exemplarisches Oracle BAM Dashboard.
Abbildung 10:
Exemplarisches
Oracle BAM Dashboard
Beschreibung der Ausgabe und Reportingfunktionen
Events können in einer Datenbank abgelegt werden und damit für beliebige
Auswertungen weiterverwendet werden.
11
Abbildung entnommen aus http://www.oracle.com/technetwork/middleware/bam/overview/bam-1.pdf
40
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
2.3.9
Marktübersicht
EsperTech Esper
Name des Anbieters
EsperTech
Name des Produktes
Esper (Event Processing Engine) &
EsperHQ (Dashboard)
Website
http://esper.codehaus.org/
Unterstützte Betriebssysteme
Windows, Linux, Solaris, AIX
Lizenztyp
Open Source (Event Processing Engine) / Kommerziell (Enterprise Edition
und zusätzliche Komponenten)
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber Trading, RFID und CRM
explizit genannt
Verbreitung
Stark verbreitet (vgl. [11])
Referenzkunden
ActiveEndpoints, AeroScout, Swisscom
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja (Enterprise Edition)
Graphische Modellierungstools für
EPL
Ja (Enterprise Edition)
Debugging und Simulation
Ja (Enterprise Edition)
Event Monitor
Ja (Enterprise Edition)
Dashboard
Ja (Enterprise Edition)
Graphische Modellierungstools für
Dashboard
Ja (Enterprise Edition)
Event Datenbank
Ja (Enterprise Edition)
Export von Events für statistische
Zwecke
Ja (Enterprise Edition)
Auswertungs- und Analysetools
Nein
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
41
2
Marktübersicht
Beschreibung der Event Processing Engine
Die Java-basierte Event Processing Engine ist unter einer Open Source-Lizenz
(GPL V2) erhältlich und kann somit frei heruntergeladen und verwendet werden. Es ist auch eine Enterprise Edition mit erweiterten Funktionalitäten verfügbar. Mitgelieferte Adapter unterstützen JMS (inbound und outbound), JDBC
und CSV sowie .NET, XML und Java Beans. Desweiteren können auch Oracle,
MySQL und Microsoft SQL Datenbanken angebunden werden. Eigene Adapter
können mit Hilfe eines API selbst erstellt werden.
Die EsperHA-Komponente erweitert Esper im Hinblick auf Hochverfügbarkeit
(Caching, Clustering, Hot-Backup).
Beschreibung der Event Processing Language
Die EPL verwendet eine SQL-ähnliche Syntax. In der Open Source-Variante ist
keine eigene Entwicklungsumgebung für die Erstellung der Statements vorgesehen. Die Enterprise Edition hingegen bietet eine Formular-basierte Designkomponente, einen Expression Builder sowie eine graphische Komponente zur
Darstellung von definierten Event Processing Rules und derer Abhängigkeiten.
Beschreibung des Dashboards
Die Dashboardkomponente EsperHQ ist webbasiert und setzt auf Adobe Flex
auf. Mit Hilfe dieser kostenpflichtigen Applikation können so genannte
Eventlets in einer konfigurierbaren Umgebung graphisch dargestellt werden.
Abbildung 1112 zeigt ein beispielhaftes EsperHQ Dashboard.
Abbildung 11: Beispielhaftes EsperHQ
Dashboard
Es werden Torten-, Linien- und Balkendiagramme sowie Tachometer, Zähler
und einige andere Diagrammtypen, wie beispielsweise die Darstellung von iden-
12
Abbildung entnommen aus http://www.espertech.com/resources/sd_esperhqscreenshots.html
42
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
tifizierten Events im Zeitablauf, bereitgestellt, die mit Events verbunden werden
können. Assistenten unterstützen auf Wunsch bei der Modellierung von Dashboards. Alternativ kann auch ein Code-Editor verwendet werden.
Beschreibung der Ausgabe und Reportingfunktionen
In der Enterprise Edition bietet Esper einen JDBC Server Endpoint an, so dass
von beliebigen Analyse- und Reportinganwendungen in Echtzeit auf die kontinuierlichen Eventabfragen bzw. Eventströme zugegriffen werden kann. Dies ist
sowohl lokal als auch per Remote-Zugriff möglich.
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
43
2
Marktübersicht
2.3.10 Event Zero Event Processing Network
Name des Anbieters
Event Zero
Name des Produktes
Event Processing Network
Website
44
http://www.eventzero.com/Solutions/EDA.aspx
Unterstützte Betriebssysteme
Alle mit Java Runtime
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner
Verbreitung
K.A.
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
K.A.
Entwicklungsumgebung für EPL
Nein
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Ja
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung der Event Processing Engine
Event Zero stellt mehr als 60 mitgelieferte Adapter zur Verfügung, mit denen
Events an die Event Processing Engine übergeben werden können. Neben verschiedenen ESB-Implementationen (TIBCO Rendezvous, IBM WebSphere MQ,
Progress SonicMQ, Apache ActiveMQ, JBoss ESB, Mule, JMS) und InternetProtokollen (HTTP, SMTP, Web Services, XML) werden auch CSV, CORBA und
DCOM unterstützt. Datenbanken können über JDBC und ODBC angebunden
werden.
Die Verarbeitungsgeschwindigkeit wird von Event Zero mit »Milliarden Events
pro Tag« angegeben.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Die Regeln werden mit einem Assistenten definiert (vgl. Abbildung 1213). Eine
direkte, Code-basierte Definition von Regeln ist nicht vorgesehen.
Abbildung 12: Event
Zero Administrationsund Entwicklungstool
Beschreibung des Dashboards
Event Zero stellt eine Anzahl von Templates für die Gestaltung von Dashboards
bereit. Es können sowohl Events in Echtzeit dargestellt werden, als auch eine
13
Abbildung entnommen aus http://www.eventzero.com/technology/administrator.aspx
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
45
2
Marktübersicht
Analyse historischer Daten vorgenommen werden, wobei mittels Drill-DownAnalysen die Aggregationsstufe variiert werden kann.
Die Gestaltung von Dashboards erfolgt über Widgets, wobei folgende Diagrammtypen für die Visualisierung von Events bereitgestellt werden: Fortschrittsbalken, Zähler, Linien-, Punkt- und Balkendiagramme.
Die Darstellung erfolgt in einem Webbrowser. Abbildung 1314 stellt ein beispielhaftes Event Zero Dashboard dar.
Abbildung 13: Beispielhaftes Event
Zero Dashboard
Beschreibung der Ausgabe und Reportingfunktionen
Mittels eines mitgelieferten Reportgenerators können Reports aus den Daten
erstellt und als PDF oder HTML auch online publiziert werden.
14
Abbildung entnommen aus http://www.eventzero.com/technology/perspective.aspx
46
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.11 StreamBase Event Processing Platform
Name des Anbieters
StreamBase
Name des Produktes
Event Processing Platform
Website
http://www.streambase.com/products-home.htm
Unterstützte Betriebssysteme
Windows, Linux
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Fokus auf Trading und Verteidigung,
Produkt aber auch für andere Zwecke
einsetzbar
Verbreitung
Stark verbreitet (vgl. [11])
Referenzkunden
BNY ConvergEx Group
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Nein
Graphische Modellierungstools für
Dashboard
Nein
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Nein
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
47
2
Marktübersicht
Beschreibung der Event Processing Engine
Die Event Processing Engine stellt eine Vielzahl von mitgelieferten Adaptern zur
Verfügung. Neben mehreren finanzmarktspezifischen Formaten können auch
CSV, IBM WebSphere MQ, JMS, HTTP und Twitter-Daten verarbeitet werden.
Datenbankanbindungen existieren für JDBC, Oracle, MySQL und Microsoft SQL.
Mittels einer API für Java, C#, C++ und Python können eigene Adapter erstellt
werden. Für die Visualisierung ist die Ausgabe über .NET, Java Swing oder Microsoft Excel möglich.
Die Verarbeitungsgeschwindigkeit wird mit etwa 500.000 Events pro Sekunde
angegeben. Die Simulation von Events (zum Beispiel zur Fehlersuche) ist möglich.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Die StreamSQL genannte EPL von StreamBase setzt auf SQL auf. Für die Entwicklung steht eine Eclipse-basierte IDE zur Verfügung. StreamBase Studio erlaubt neben der Code-basierten Entwicklung auch die graphische Modellierung
von Regeln und Abfragen mit StreamSQL EventFlow (vgl. Abbildung 1415). Ein
Debugger ist ebenfalls enthalten.
Abbildung 14: Modellierung mit dem
StreamBase Studio
15
Abbildung entnommen aus http://www.streambase.com/products-StreamBaseStudio.htm
48
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.12 Open ESB Intelligent Event Processor (IEP)
Name des Anbieters
Open ESB (Oracle)
Name des Produktes
Intelligent Event Processor (IEP)
Website
https://open-esb.dev.java.net/IEPSE.html
Unterstützte Betriebssysteme
Alle mit Java Runtime
Lizenztyp
Open Source
Softwareart
Event Processing Engine
Branchenfokus
Keiner
Verbreitung
K.A.
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja (NetBeans IDE)
Graphische Modellierungstools für
EPL
Ja (NetBeans IDE)
Debugging und Simulation
Nein
Event Monitor
Nein
Dashboard
Nein
Graphische Modellierungstools für
Dashboard
Nein
Event Datenbank
Ja (Java DB)
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Nein
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
49
2
Marktübersicht
Beschreibung der Event Processing Engine
Der Intelligent Event Processor (IEP) ist ein Teil des Open ESB Projektes, das als
Open Source-Produkt der Common Development and Distribution License
(CDDL) unterliegt. Dieses ist wiederum stark mit der Java CAPS Plattform für
SOA verbunden ist. Die Pflege des Projektes ging mit der Übernahme von Sun
an Oracle über. Im Rahmen des Open ESB Projektes ist auch eine BPEL Service
Engine integriert. Als Adapter können alle von Open ESB unterstützten Anbindungen verwendet werden, unter anderem JMS, SOAP, XML, HTTP, FTP und
JBI.
Beschreibung der Event Processing Language
Als EPL wird die Continuous Query Language (CQL) verwendet, die auch in der
Oracle EDA Suite zum Einsatz kommt (siehe Abschnitt 2.3.8). Mit einem Plugin
für die NetBeans IDE kann eine graphische Entwicklung von Event Processing
Rules durchgeführt werden (vgl. Abbildung 1516).
Abbildung 15: Elemente für die Entwicklung mit Open
ESB IEP
16
Abbildung entnommen aus https://open-esb.dev.java.net/kb/60/ep-iepse-devguide.html
50
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.13 Vitria M3O Analytic Server & M3O Operations Book
Name des Anbieters
Vitria
Name des Produktes
M3O Analytic Server (Event Processing
Engine) & M3O Operations Book
(Dashboard)
Website
http://www.vitria.com/products/m3o-products/m3oanalytic-server/
Unterstützte Betriebssysteme
Windows, Linux, Solaris, HP-UX
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber Verbreitung in Telekommunikation, Energie und Versorger,
Finanzdienstleistungen und Versicherungen
Verbreitung
K.A.
Referenzkunden
TXU Energy, R Cable Galicia, Andorra
Telecom
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Ja (M3O Operations Book)
Graphische Modellierungstools für
Dashboard
Ja (M3O Operations Book)
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
51
2
Marktübersicht
Beschreibung der Event Processing Engine
Als Bestandteil der Vitria M3O (Model, Manage, Monitor and Optimize) Operational Intelligence Software Suite ist der M3O Analytic Server für Complex Event
Processing zuständig.
Die zugrundeliegende Event Processing Engine operiert direkt auf den im XMLFormat vorliegenden Events. Adapter werden unter anderem für JMS und Web
Services bereitgestellt. Die Anbindung von Datenbanken, RSS-Feeds oder Sensordaten ist ebenfalls möglich. Zur Erhöhung der Skalierbarkeit ist der Feed Server von der eigentlichen Event Processing Engine architektonisch getrennt.
Events können an den M3O BPMS Server oder an beliebige Dritt-Applikationen
weitergegeben werden.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Die Abfragesprache des M3O Analytic Server heißt StreamXQuery und verwendet eine auf der standardisierten XQuery basierende Syntax. Die Analyse von
XML-basierten Event Streams kann mit SQL-Abfragen kombiniert werden. Die
Abfragen selbst werden mittels des graphischen Editors M3O Query Modeler
konstruiert (vgl. Abbildung 1617).
Abbildung 16: Modellierung mit dem
Vitria M3O Query
Modeler
17
Abbildung entnommen aus http://www.vitria.com/wpcontent/download/Complex%20Event%20Processing%20for%20Operational%20Intelligence_3_16_10.pdf
52
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung des Dashboards
M3O Operations Book ist die Dashboardkomponente der M3O Operational
Intelligence Software Suite. Als webbasierte Anwendung basiert M3O Operations Book auf Adobe Flex. Einige Templates für oft benötigte Diagramme werden mitgeliefert, die Konstruktion individueller Dashboards erfolgt graphisch
über Widgets. Historische und Echtzeitdaten können kombiniert werden. Zur
Visualisierung werden unter anderem Torten-, Balken, Linien- und
Pivotdiagramme zur Verfügung gestellt. Drill-Down-Analysen können ebenfalls
vorgenommen werden. Beispielhafte Dashboards zeigt Abbildung 1718.
Abbildung 17: Beispielhafte Vitria M3O
Operations Book
Dashboards
18
Abbildung entnommen aus http://www.vitria.marketbright.com/resources/brochures-and-datasheets/vitria_m3o_opsbook_ds_1_09.pdf
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
53
2
Marktübersicht
2.3.14 Realtime Monitoring RTM Analyzer
Name des Anbieters
Realtime Monitoring GmbH
Name des Produktes
RTM Analyzer
Website
54
http://www.realtimemonitoring.de/index.php/de/leistungen/rtm-analyzer
Unterstützte Betriebssysteme
Alle mit Java Runtime
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner, aber Trading, Produktion,
Telekommunikation und Business
Activity Monitoring (BAM) explizit als
Anwendungsgebiete genannt
Verbreitung
K.A.
Referenzkunden
TeamBank AG
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
K.A.
Event Monitor
Ja
Dashboard
Ja
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
Nein
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Beschreibung der Event Processing Engine
Adapter stehen für JDBC/ODBC, Files, Sockets, OPC DA, JMS, SNMP und JMX
zur Verfügung. Zudem können mit einem mitgelieferten Framework auch eigene Adapter implementiert werden.
Die Verarbeitungsgeschwindigkeit des RTM Analyzers wird mit einigen 100.000
Events pro Sekunde angegeben.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Die Abfrage von Events erfolgt durch SQL-Statements, die von der Event Processing Engine kontinuierlich ausgeführt werden. Dafür steht ein Query Editor
zur Verfügung (vgl. Abbildung 1819). Alternativ besteht die Möglichkeit, Abfragen durch ein graphisches Interface zu modellieren.
Abbildung 18: Entwicklung mit dem
RTM Analyzer
Beschreibung des Dashboards
Events können in konfigurierbaren Dashboards (Management Cockpits) dargestellt werden. Abbildung 1920 zeigt ein exemplarisches Dashboard.
19
20
Abbildung entnommen aus http://www.realtime-monitoring.de/pdfs/Manufacturing_Demo_RTM_EN.pdf
Abbildung entnommen aus http://www.realtime-monitoring.de/pdfs/WhitePaper_RTM_Analyzer_EN.pdf
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
55
2
Marktübersicht
Abbildung 19:
Exemplarisches RTM
Analyzer Dashboard
Beschreibung der Ausgabe und Reportingfunktionen
Daten können an Datenbanken oder externe Anwendungen übergeben werden.
56
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.15 Informatica Rulepoint
Name des Anbieters
Informatica
Name des Produktes
Rulepoint
Website
http://www.informatica.com/de/products_services/rulepoin
t_operational_intelligence/Pages/index.aspx
Unterstützte Betriebssysteme
Windows, Linux, Solaris
Lizenztyp
Kommerziell
Softwareart
Event Processing Engine
Branchenfokus
Keiner, aber Trading, Bezahlsysteme
und Verteidigung als Anwendungsgebiete beispielhaft genannt
Verbreitung
K.A.
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Regelbasiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Nein
Graphische Modellierungstools für
Dashboard
Nein
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
57
2
Marktübersicht
Beschreibung der Event Processing Engine
Mitgelieferte Adapter sind für ESB-Implementationen, Datenbanken und Files
vorhanden (JDBC, Web Services, JMS, EJB, RMI, HTTP, POP3, SMTP, IMAP, FTP
und XML) sowie für RSS-Feeds. Events können sowohl gelesen als auch geschrieben werden.
Für die Administration steht eine graphische Konsole zur Verfügung. Die Darstellung erfolgt im Webbrowser. Endbenutzer können über die Konsole auch
weitere Analysen in den berichteten Events (zum Beispiel Drill-Down) vornehmen. Historische und Echtzeitdaten können in die Analysen einbezogen werden. In Abbildung 2021 ist ein beispielhafter Real-Time Alert Manager dargestellt. Eine Visualisierungskomponente in Form eines Dashboards ist allerdings
nicht vorhanden.
Abbildung 20: Beispielhafter
Informatica Rulepoint
Alert Manager
Beschreibung der Event Processing Language
Die Definition von Event Processing Rules wird entweder mittels einer regelbasierten EPL oder über Assistenten vorgenommen. Für oft verwendete Ausdrücke
sind Templates verfügbar.
21
Abbildung entnommen aus http://www.informatica.com/INFA_Resources/ds_rulepoint_7146.pdf
58
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.16 Starview Smart Enterprise Platform
Name des Anbieters
Starview Technology
Name des Produktes
Smart Enterprise Platform
Website
http://www.starviewtechnology.com/starviewproducts.html
Unterstützte Betriebssysteme
Windows, Linux, Solaris
Lizenztyp
Kommerziell
Softwareart
Event Processing Engine
Branchenfokus
Keiner
Verbreitung
K.A.
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Regelbasiert
Entwicklungsumgebung für EPL
Ja
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Nein
Graphische Modellierungstools für
Dashboard
Nein
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
59
2
Marktübersicht
Beschreibung der Event Processing Engine
Adapter werden für TCP/IP, JMX, JMS, TIBCO Rendezvous, HTTP, Comet und
Dateien bereitgestellt. Datenbanken können mittels JDBC angebunden werden
und es existiert ein Adapter für H2DB. Mehrere Event Processing Engines können parallel geschaltet werden.
Der Simulation Server kann sowohl mit Echtzeitdaten, als auch mit historischen
Daten verwendet werden.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Die Definition von Regeln wird mittels der StarRules Sprache durchgeführt. Die
Sprache ist Agenten-orientiert und eignet sich damit auch für sehr komplexe
Algorithmen. Dafür stellt Starview eine Eclipse-basierte Entwicklungsumgebung
zur Verfügung. Diese enthält auch Assistenten, die auch weniger IT-erfahrenen
Anwendern die Definition von Regeln erleichtern sollen (vgl. Abbildung 2122).
Abbildung 21: Modellierung mit
Starview
22
Abbildung entnommen aus http://www.starviewtechnology.com/documents/Starview%20Solutions%20White%20Paper.pdf
60
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.17 Microsoft StreamInsight
Name des Anbieters
Microsoft
Name des Produktes
StreamInsight
Website
http://www.microsoft.com/sqlserver/2008/en/us/R2complex-event.aspx
Unterstützte Betriebssysteme
Windows
Lizenztyp
Kommerziell
Softwareart
Event Processing Engine
Branchenfokus
Keiner, aber Trading, Energiewirtschaft, Health Care und Logistik beispielhaft genannt
Verbreitung
K.A.
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Datenstromorientiert
Entwicklungsumgebung für EPL
Ja (Visual Studio)
Graphische Modellierungstools für
EPL
Nein
Debugging und Simulation
Ja
Event Monitor
Nein
Dashboard
Nein
Graphische Modellierungstools für
Dashboard
Nein
Event Datenbank
Ja (SQL Server)
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Nein
ESB-Anbindung
Nein
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
61
2
Marktübersicht
Beschreibung der Event Processing Engine
Die Verwendung von StreamInsight setzt einen Microsoft SQL Server voraus,
der für die Ablage von Eventdaten eingesetzt wird. StreamInsight liefert keine
vorgefertigten Adapter mit, allerdings wird auf die Verfügbarkeit von spezialisierten Adaptern bei Microsoft-Partnern hingewiesen. Eigene Adapter können
mit einem bereitgestellten SDK entwickelt werden, um damit Events aus Datenbanken, Webquellen oder anderen Applikationen lesen und absetzen zu
können.
StreamInsight lässt die Verarbeitung von mehreren 100.000 Events pro Sekunde zu.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Die Abfragesprache LINQ (Language Integrated Query) ist SQL-basiert. Die Entwicklung kann im Microsoft Visual Studio vorgenommen werden. Dieses stellt
alle in einer IDE üblichen Funktionalitäten zur Verfügung, beispielsweise einen
(graphischen) Event Flow Debugger (vgl. Abbildung 2223).
Abbildung 22: Entwicklung mit Microsoft StreamInsight
23
Abbildung entnommen aus
http://channel9.msdn.com/learn/courses/SQL2008R2TrainingKit/SQL10R2UPD05/SQL10R2UPD05_HOL_03/Exercise-1-Working-withthe-StreamInsight-Event-Flow-Debugger/
62
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.18 Axway Synchrony Sentinel
Name des Anbieters
Axway
Name des Produktes
Synchrony Sentinel
Website
http://www.axway.com/products-solutions/psoverview/axway-synchrony/sentinel
Unterstützte Betriebssysteme
K.A.
Lizenztyp
Kommerziell
Softwareart
Event Processing Engine
Branchenfokus
Keiner, aber Netzwerk- und Geschäftsprozessüberwachung als Anwendungsgebiete genannt
Verbreitung
K.A.
Referenzkunden
Renault, Procter+Gamble, Electrolux,
DB Schenker
Event Stream Processing
K.A.
Complex Event Processing
Ja
EPL Sprachtyp
K.A.
Entwicklungsumgebung für EPL
K.A.
Graphische Modellierungstools für
EPL
K.A.
Debugging und Simulation
K.A.
Event Monitor
Ja
Dashboard
Nein
Graphische Modellierungstools für
Dashboard
Nein
Event Datenbank
K.A.
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
K.A.
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
63
2
Marktübersicht
Beschreibung der Event Processing Engine
Synchrony Sentinel eignet sich insbesondere zur Überwachung der Axway
Synchrony Plattform, kann aber auch in andere Systeme integriert werden. Mit
der Universal Agent Script Facility werden Events aus verschiedenen Applikationen gesammelt.
Beschreibung des Dashboards
In Synchrony Sentinel wird ein personalisiertes User Interface basierend auf der
Java-Technologie zur Verfügung gestellt, dessen Anzeige in einem Webbrowser
erfolgt. Darauf aufbauend kann der Benutzer mittels Java eine eigene
Dashboardapplikation entwickeln.
64
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.19 West Global Vantify
Name des Anbieters
West Global
Name des Produktes
Vantify
Website
http://www.westglobal.com/
Unterstützte Betriebssysteme
Windows, Linux, Unix, Solaris
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Fokus auf CRM und Netzwerküberwachung
Verbreitung
K.A.
Referenzkunden
Vodafone Ireland
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Regelbasiert
Entwicklungsumgebung für EPL
K.A.
Graphische Modellierungstools für
EPL
K.A.
Debugging und Simulation
K.A.
Event Monitor
Ja
Dashboard
Ja
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
K.A.
Export von Events für statistische
Zwecke
K.A.
Auswertungs- und Analysetools
Ja
ESB-Anbindung
K.A.
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
65
2
Marktübersicht
Beschreibung der Event Processing Engine
Es werden verschiedene Adapter für Middleware-Applikationen basierend auf
TIBCO, .NET und Java angeboten sowie für SNMP und Dateien. Auch werden
offene APIs unterstützt. Zudem werden mehrere Templates für Regeln zur Verfügung gestellt, die der Benutzer für Benachrichtigungen und Alarme auf einem Dashboard einsetzen kann.
Es wird insbesondere für den Einsatz im Customer Experience Management
(CEM) und Service Experience Management (SEM) geworben, wofür bereits
vorgefertigte Templates und Dashboards verfügbar sind.
Die Verarbeitungsgeschwindigkeit wird mit mehreren Tausend Events pro Sekunde angegeben.
Beschreibung des Dashboards
Die Darstellung des konfigurierbaren Dashboards erfolgt in einem Webbrowser.
Es stehen verschiedene Diagramme für die Verwendung zur Verfügung. Abbildung 2324 zeigt exemplarische Vantify Dashboards. Der Anwender kann mittels
Drill-Down eine Ursachenforschung für Events durchführen.
Abbildung 23:
Exemplarische West
Global Vantify Dashboards
24
Abbildung entnommen aus http://www.westglobal.com/index.php?option=com_docman&task=doc_download&gid=3&Itemid=69
66
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
2.3.20 IBM WebSphere Business Events
Name des Anbieters
IBM
Name des Produktes
WebSphere Business Events
Website
http://www-01.ibm.com/software/integration/wbe/
Unterstützte Betriebssysteme
Windows, Linux, Solaris, HP-UX, AIX
Lizenztyp
Kommerziell
Softwareart
Komplettsystem
Branchenfokus
Keiner
Verbreitung
Stark verbreitet, ca. 7% Marktanteil
bei CEP Software im Jahr 2008 (vgl.
[12])
Referenzkunden
K.A.
Event Stream Processing
Ja
Complex Event Processing
Ja
EPL Sprachtyp
Regelbasiert
Entwicklungsumgebung für EPL
Nein
Graphische Modellierungstools für
EPL
Ja
Debugging und Simulation
Ja
Event Monitor
Ja
Dashboard
Ja
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
Ja
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Nein
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
67
2
Marktübersicht
Beschreibung der Event Processing Engine
Die Event Processing Engine kann Events aus der IBM ESB-Implementation
WebSphere ESB, dem WebSphere Message Broker oder JMS beziehen bzw. zur
Weiterverarbeitung an andere Applikationen senden. Adapter stehen weiterhin
für eine Anzahl von Standardprotokollen wie HTTP, SMTP, FTP und Web Services zur Verfügung. Datenbanken können über JDBC und ODBC angebunden
werden. Für das Load Balancing können mehrere Event Processing Engines parallel geschaltet werden. Server Clustering wird ebenfalls unterstützt.
Für die Administration steht eine graphische Konsole zur Verfügung.
Beschreibung der Event Processing Language
Die Definition von Event Processing Rules wird über die Design Komponente
mit Hilfe von Formularen vorgenommen (vgl. Abbildung 2425). Eine direkte,
Code-basierte Regeldefinition ist nicht vorgesehen.
Abbildung 24: Entwicklung mit IBM
WebSphere Business
Events
Beschreibung des Dashboards
Die mitgelieferte Komponente für die Visualisierung von Events heißt Business
Space. Das Layout der Dashboards wird über Widgets definiert. Für die Gestaltung von Dashboards stehen mehrere Diagrammtypen, wie etwa Zähler, Linien, Torten-, Balken- und Punktdiagramme, zur Verfügung. Abbildung 2526 zeigt
beispielhafte Diagramme, die mit Business Space erstellt werden können.
25
Abbildung entnommen aus
http://publib.boulder.ibm.com/infocenter/wbevents/v7r0m0/topic/com.ibm.wbe.tutorial.doc/doc/exercise3.html
26 Abbildung entnommen aus
http://publib.boulder.ibm.com/infocenter/wbevents/v7r0m0/topic/com.ibm.wbe.monitoring.doc/doc/bs_overviewofcreatingcharts.html
68
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
Abbildung 25: Beispielhafte Diagramme in IBM
WebSphere Business
Space
Werden weitergehende Visualisierungsmöglichkeiten benötigt, kann alternativ
auch eine Integration mit dem WebSphere Business Monitor erfolgen. Die Anzeige eines Dashboards ist auch auf Remotesystemen möglich.
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
69
2
Marktübersicht
2.3.21 SL RTView
Name des Anbieters
SL
Name des Produktes
RTView
Website
70
http://www.sl.com/products/rtview.shtml
Unterstützte Betriebssysteme
Alle mit Java Runtime
Lizenztyp
Kommerziell
Softwareart
Dashboard
Branchenfokus
Keiner
Verbreitung
Sehr verbreitet (unter anderem auch
lizensiert durch Sybase und Progress)
Referenzkunden
Deutsche Bank, Shell, NCR, HSBC,
UBS
Event Stream Processing
Nein
Complex Event Processing
Nein
EPL Sprachtyp
keine EPL
Entwicklungsumgebung für EPL
Nein
Graphische Modellierungstools für
EPL
Nein
Debugging und Simulation
Nein
Event Monitor
Ja
Dashboard
Ja
Graphische Modellierungstools für
Dashboard
Ja
Event Datenbank
Nur Anbindung
Export von Events für statistische
Zwecke
Ja
Auswertungs- und Analysetools
Ja
ESB-Anbindung
Ja
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
2
Marktübersicht
RTView ist eine reine Visualisierungslösung, die in einer EDA für das Business
Activity Monitoring (BAM) integriert werden kann. Daten können aus einer
Vielzahl von Eventquellen gelesen werden. Eine Anbindung an JMS, IBM
WebSphere MQ, TIBCO Rendezvous und JMX ist vorhanden, ebenso wie für
Datenbanken, z.B. Oracle, Mircrosoft SQL Server und IBM DB2, sowie mittels
JDBC oder ODBC. Ferner können XML, CSV-basierte Dateien und Microsoft Excel Dateien verarbeitet werden. Die Entwicklung eigener Adapter ist möglich.
Mit dem RTView Builder können individuelle Dashboards und Reports mittels
einer graphischen Modellierungsumgebung gestaltet werden (vgl. Abbildung
2627).
Abbildung 26: Modellierung mit dem
SL RTView Builder
Es stehen mehrere Diagrammtypen für die graphische Darstellung zur Verfügung, beispielsweise Zähler, Fortschrittsbalken, Torten-, Linien- und Balkendiagramme. Die Darstellung der Dashboards auf Remotesystemen ist möglich. Der
Benutzer kann über das User Interface auch Drill-Down-Analysen durchführen.
Historische und Echtzeitdaten können kombiniert und gegenübergestellt werden.
RTView ist auch zur Verarbeitung von Alerts in der Lage. Diese können entweder per Mail oder SMS gesendet werden, aber auch in elektronischen Formaten
an Applikationen zum Zwecke der automatisierten Weiterverarbeitung.
Reports können als PDF, HTML oder Microsoft Excel Sheet erstellt und exportiert werden.
27
Abbildung entnommen aus http://www.sl.com/pdfs/SLRTViewDatasheet-Nov08.pdf
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
71
2
Marktübersicht
2.4
Tabellarische Übersicht
Auf den folgenden Seiten werden die betrachteten Event Processing Tools anhand des in Abschnitt 2.2 eingeführten Kriterienrasters in einer tabellarischen
Übersicht gegenübergestellt.
72
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
Aleri Streaming
Platform / CEP
Windows, Linux,
Solaris
Kommerziell
Komplettsystem
Ja
Ja
Datenstromorientiert
Ja
Name des Produktes
Unterstützte Betriebssysteme
Softwareart
Event Stream Processing
Complex Event Processing
EPL Sprachtyp
Ja
Ja (SL RTView
lizenziert)
Ja
Nein
Dashboard
Export von Events für statistische Zwecke
Auswertungs- und Analysetools
ESB-Anbindung
Graphische Modellierungstools für Dashboard
Event Datenbank
Ja (SL RTView
lizenziert)
Ja
Ja
Event Monitor
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja (Aleri Studio)
Nein (CEP Studio)
Ja
Ja
Imperativ
Ja
Ja
Komplettsystem
Windows, Linux,
Solaris
Kommerziell
Apama
Progress
Entwicklungsumgebung für
EPL
Graphische Modellierungstools für EPL
Debugging und Simulation
Lizenztyp
Sybase
Name des Anbieters
Ja
K.A.
Ja
Ja
Ja (Spotfire)
Ja (Spotfire)
Ja
K.A.
Ja
Ja
Regelbasiert
Ja
Ja
Komplettsystem
BusinessEvents &
Spotfire
Windows, Linux,
Solaris, HP UX
Kommerziell
TIBCO
Ja
Nein
Ja
Nein
Nein
Nein
Nein
Ja
Nein
Nein
Regelbasiert
Ja
Event Processing
Engine
Ja
Alle (Software as
a Service)
Kommerziell
CEP Server
ruleCore
Nein
Ja
Ja
Ja
Ja
Ja
K.A.
K.A.
K.A.
Datenstromorientiert
Ja
Nein
Ja
Komplettsystem
Kommerziell
Continuous
Analytics
Linux
Truviso
Ja
Ja
Ja
Ja
Ja (UC4 Insight)
Ja (UC4 Insight)
Ja
Ja
Ja
Ja
Regelbasiert
Ja
Ja
Komplettsystem
Kommerziell
UC4 Decision &
UC4 Insight
Windows
UC4 Software
Ja
Nein
Ja
Nur Anbindung
Nein
Nein
Nein
Ja
Nein
Ja
Regelbasiert
Ja
Event Processing
Engine
Ja
Alle mit Java
Runtime
Open Source
Drools Fusion
JBoss
2
Marktübersicht
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
73
74
Datenstromorientiert
Ja (Enterprise
Edition)
Ja (Enterprise
Edition)
Ja (Enterprise
Edition)
Ja (Enterprise
Edition)
Ja (Enterprise
Edition)
Ja (Enterprise
Edition)
Ja (Enterprise
Edition)
Ja (Enterprise
Edition)
Nein
Ja
Komplettsystem
Ja
Ja
Datenstromorientiert
Ja
Ja
Softwareart
Event Stream Processing
Complex Event Processing
EPL Sprachtyp
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
Ja
Ja
Ja
Event Monitor
Dashboard
Graphische Modellierungstools für Dashboard
Event Datenbank
Export von Events für statistische Zwecke
Auswertungs- und Analysetools
ESB-Anbindung
Ja
Ja
Ja
Ja
Ja
Entwicklungsumgebung für
EPL
Graphische Modellierungstools für EPL
Debugging und Simulation
Lizenztyp
Windows, Linux,
Solaris, HP-UX, AIX
Kommerziell
Unterstützte Betriebssysteme
Ja
Ja
Windows, Linux,
Solaris, AIX
Open Source /
Kommerziell
Komplettsystem
Esper & EsperHQ
EDA Suite
Name des Produktes
EsperTech
Oracle
Name des Anbieters
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Nein
K.A.
Ja
Ja
Komplettsystem
Alle mit Java
Runtime
Kommerziell
Event Processing
Network
Event Zero
Ja
Nein
Ja
Ja
Nein
Nein
Ja
Ja
Ja
Datenstromorientiert
Ja
Ja
Ja
Komplettsystem
Kommerziell
Windows, Linux
Event Processing
Platform
StreamBase
Ja
Nein
Ja
Ja (Java DB)
Nein
Nein
Nein
Nein
Ja (NetBeans IDE)
Datenstromorientiert
Ja (NetBeans IDE)
Ja
Event Processing
Engine
Ja
Alle mit Java
Runtime
Open Source
Open ESB
(Oracle)
Intelligent Event
Processor (IEP)
Ja
Ja
Ja
Ja (M3O Operations Book)
Ja (M3O Operations Book)
Ja
Ja
Ja
Ja
Datenstromorientiert
Ja
Ja
Ja
Komplettsystem
M3O Analytic
Server & M3O
Operations Book
Windows, Linux,
Solaris, HP-UX
Kommerziell
Vitria
Ja
Ja
Ja
Nein
Ja
Ja
Ja
K.A.
Ja
Datenstromorientiert
Ja
Ja
Ja
Komplettsystem
Alle mit Java
Runtime
Kommerziell
Realtime Monitoring GmbH
RTM Analyzer
2
Marktübersicht
Ja
Ja
Nein
Ja
Event Processing
Engine
Ja
Ja
Regelbasiert
Ja
Ja
Ja
Ja
Nein
Nein
Ja
Softwareart
Event Stream Processing
Complex Event Processing
EPL Sprachtyp
Entwicklungsumgebung für
EPL
Graphische Modellierungstools für EPL
Debugging und Simulation
Event Monitor
Dashboard
Graphische Modellierungstools für Dashboard
Event Datenbank
Export von Events für statistische Zwecke
Auswertungs- und Analysetools
ESB-Anbindung
Ja
Ja
Ja
Ja
Ja
Ja
Nein
Ja
Ja
Regelbasiert
Ja
Event Processing
Engine
Ja
Windows, Linux,
Solaris
Kommerziell
Unterstützte Betriebssysteme
Lizenztyp
Rulepoint
Name des Produktes
Starview Technology
Smart Enterprise
Platform
Windows, Linux,
Solaris
Kommerziell
Informatica
Name des Anbieters
Nein
Nein
Ja
Ja (SQL Server)
Nein
Nein
Nein
Ja
Nein
Datenstromorientiert
Ja (Visual Studio)
Ja
Event Processing
Engine
Ja
Kommerziell
Windows
StreamInsight
Microsoft
K.A.
Ja
Ja
K.A.
Nein
Nein
Ja
K.A.
K.A.
K.A.
K.A.
Ja
Event Processing
Engine
K.A.
Kommerziell
Synchrony
Sentinel
K.A.
Axway
K.A.
Ja
K.A.
K.A.
Ja
Ja
Ja
K.A.
K.A.
K.A.
Regelbasiert
Ja
Ja
Komplettsystem
Windows, Linux,
Unix, Solaris
Kommerziell
Vantify
West Global
Ja
Nein
Ja
Ja
Ja
Ja
Ja
Ja
Ja
Nein
Regelbasiert
Ja
Ja
Komplettsystem
WebSphere Business Events
Windows, Linux,
Solaris, HP-UX, AIX
Kommerziell
IBM
Ja
Ja
Ja
Nur Anbindung
Ja
Ja
Ja
Nein
Nein
Nein
keine EPL
Nein
Nein
Dashboard
Alle mit Java
Runtime
Kommerziell
RTView
SL
2
Marktübersicht
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
75
3
Fazit
Die betrachteten Event Processing Tools sind zum Einsatz in einer EDA allesamt
geeignet. Die Minimalfunktionalität – den Empfang von Events, das Erkennen
von relevanten Events und Event Patterns nach definierten Regeln, sowie das
unmittelbare Auslösen entsprechender Reaktionen – beherrschen alle. Die meisten Produkte setzen dabei auf der Java Plattform auf.
Allerdings existieren auch große Unterschiede:
76
•
Umfang der mitgelieferten Adapter: Manche Produkte bieten eine breite
Palette an Anbindungen, von den verschiedensten ESB-Implementationen, über Internet-Protokolle und Datenbank-Anbindungen bis hin zu
Dateiformaten (beispielsweise Progress Apama, EventZero). Manche
Produkte, die sich sehr stark an den Einsatz in Finanzmärkten richten,
bringen auch eine weitgehende Unterstützung der in dieser Branche
verbreiteten Austauschformate mit (zum Beispiel Sybase, StreamBase).
Andere Anbieter setzen nur auf einige wenige verbreitete Standards,
wie etwa SOAP, und erwarten vom Anwender gegebenenfalls Eigenarbeit bei der Entwicklung eigener Adapter (beispielsweise Beispiel Microsoft StreamInsight).
•
Art und Umfang der mitgelieferten Werkzeuge: Viele Produkte enthalten letztendlich nur die Kernkomponente: die Event Processing Engine
mit einer entsprechenden EPL. Solche Produkte setzen aber regelmäßig
das Vorhandensein weiterer Software voraus, zum Beispiel Datenbanken, ESB-Implementationen, Application Server etc. Der Anwender
übernimmt die Integration der Event Processing Engine in die vorhandene Architektur dann selbst (zum Beispiel Esper, ruleCore, Open ESB IEP,
Informatica Rulepoint). Andere wiederum sind Komplettlösungen, die
auch Entwicklungsumgebungen, Dashboards, Datenbanken für die
Speicherung historischer Daten, Software für die graphische Regelmodellierung und sogar Reportgeneratoren enthalten, die fast sämtliche
Anforderungen an die Funktionalität von Event Processing abdecken
(zum Beispiel Progress Apama, TIBCO BusinessEvents, Vitria M3O
Analytic Server).
•
Dashboards: Einige Produkte beschränken sich auf die Kernfunktionalität des Event Processing und überlassen die Visualisierung einer entsprechenden Eventsenke, die nicht Teil des Produkts ist (beispielsweise
ruleCore, StreamBase, Starview oder die Open Source-Produkte JBoss
Drools Fusion und Open ESB IEP). Anderen Produkte liefern ausgereifte,
meist webbasierte Dashboards mit entsprechenden Modellierungstools
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
3
Fazit
direkt mit (zum Beispiel Truviso Continuous Analytics, RTM Analyzer,
IBM WebSphere Business Events). Verschiedene Hersteller bieten auch
eine Visualisierungskomponente als eigenständiges Produkt an, welches
gut in eine Architektur mit der Event Processing Engine integriert werden kann (beispielsweise TIBCO BusinessEvents & Spotfire, UC4 Decision
& UC4 Insight, EsperTech Esper & EsperHQ oder Vitria M3O Analytic
Server & M3O Operations Book). Es gibt auch Anbieter, welche die reine
Dashboardlösung RTView von SL für ihr Event Processing Produkte lizensiert haben und auf diese Weise ein Dashboard mit Dashboard Builder
anbieten können (Sybase und Progress Apama).
•
Art und Umfang der EPL: Hier richten sich die Produkte erkennbar an
unterschiedliche Zielgruppen. Viele Event Processing Engines arbeiten
auf der Grundlage einer komplexen Abfragesprache, die eine Vielzahl
von Möglichkeiten zur Definition sehr komplexer Regeln erlaubt. Diese
benötigen im Gegenzug entsprechendes Fachwissen, da die Entwicklung entsprechender Regeln Kenntnisse in der Softwareentwicklung und
die Beherrschung der mitgelieferten IDEs (oft Eclipse-basiert) voraussetzt
(zum Beispiel Sybase Aleri, Microsoft StreamInsight). Andere Produkte
zielen erkennbar auf den Einsatz durch nicht IT-erfahrene Benutzer und
bringen dann entsprechende Werkzeuge mit, die die direkte Programmierung in einer EPL unterstützen (zum Beispiel Assistenten zur Regelgenerierung) oder durch graphische Drag-and-Drop-Modellierung gar
völlig ersetzen (beispielsweise Oracle EDA Suite oder Progress Apama).
•
Zusammenspiel mit Produkten desselben Anbieters: Viele Produkte sind
erkennbar für den Einsatz in einer weitergehenden Architektur desselben Anbieters optimiert und bieten dann entsprechenden Mehrwert
(zum Beispiel TIBCO BusinessEvents, IBM WebSphere Business Events
und Microsoft StreamInsight). Andere wurden für den isolierten Einsatz
optimiert (beispielsweise Progress Apama, RTM Analyzer, EventZero oder
Informatica Rulepoint).
•
Verarbeitungsgeschwindigkeit: Ein besonders bedeutendes Anwendungsgebiet für Event Processing Software ist der automatisierte Handel
mit Wertpapieren (Algorithmic Trading). Dabei kommt es auf eine besonders hohe Verarbeitungsgeschwindigkeit an, da nur dann die Realisierung von Gewinnen möglich ist. Deswegen sind einige Produkte auf
diese Anwendung hin ausgelegt und bieten Reaktionszeiten im
Millisekundenbereich (zum Beispiel Progress Apama, StreamBase). Es
gibt aber auch Produkte, die eher für die Unternehmenssteuerung gedacht sind, nur relativ wenige Daten pro Zeiteinheit verarbeiten müssen
und daher weniger Augenmerk auf die Skalierbarkeit richten (beispielsweise UC4 Decision).
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
77
Abkürzungen
API
ASL
BAM
BPMS
BPEL
CDDL
CEP
CORBA
CRM
CSV
DB
DCOM
EDA
EJB
EPL
ESB
ESP
FTP
GPL
HTML
HTTP
IDE
IMAP
IP
IT
JAXB
JBI
JCA
JDBC
JMS
JMX
JSON
K.A.
ODBC
OPC DA
PDF
POP3
REST
RFID
RMI
RSS
SDK
78
Application Programming Interface
Apache Software License
Business Activity Monitoring
Business Process Management Suite
Business Process Execution Language
Common Development and Distribution License
Complex Event Processing
Common Object Request Broker Architecture
Customer Relationship Management
Comma-Separated Values
Database
Distributed Component Object Model
Event-Driven Architecture
Enterprise JavaBeans
Event Processing Language
Enterprise Service Bus
Event Stream Processing
File Transfer Protocol
General Public License
HyperText Markup Language
HyperText Transfer Protocol
Integrated Development Environment
Internet Message Access Protocol
Internet Protocol
Information Technology
Java Architecture for XML Binding
Java Business Integration
Java EE Connector Architecture
Java Database Connectivity
Java Message Service
Java Management Extensions
JavaScript Object Notation
Keine Angabe
Open Database Connectivity
OPC Data Access
Portable Document Format
Post Office Protocol, Version 3
REpresentational State Transfer
Radio Frequency IDentification
Remote Method Invocation
Really Simple Syndication
Software Development Kit
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
Abkürzungen
SQL
SMS
SMTP
SNMP
SOA
TCP
UDP
XML
Structured Query Language
Short Message Service
Simple Mail Transfer Protocol
Simple Network Management Protocol
Service-Oriented Architecture
Transmission Control Protocol
User Datagram Protocol
eXtensible Markup Language
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
79
Referenzen
[1] B. Seeger: Kontinuierliche Kontrolle - Complex Event Processing: Auswertung von Datenströmen, in: iX, 2010, S. 131-134.
[2] N. Leavitt: Complex-Event Processing Poised for Growth, in: Computer, 42,
2009, S. 17-20.
[3] D. Luckham: The Power of Events - An Introduction to Complex Event
Processing in Distributed Enterprise Systems, Addison-Wesley, Boston,
London, 2002.
[4] M. Eckert und F. Bry: Complex Event Processing (CEP), in: InformatikSpektrum, 32, 2009, S. 163-167.
[5] K.M. Chandy und W.R. Schulte: Event Processing: Designing IT Systems for
Agile Companies, McGraw-Hill, New York, 2010.
[6] R. Bruns und J. Dunkel: Event-Driven Architecture: Softwarearchitektur für
ereignisgesteuerte Geschäftsprozesse, Springer, Berlin, Heidelberg, 2010.
[7] O. Etzion und P. Niblett: Event Processing in Action, Manning, Stamford,
CT, 2010.
[8] D. Luckham und R. Schulte: Event Processing Glossary - Version 1.1, Event
Processing Technical Society, http://www.epts.com/component/option,com_docman/task,doc_download/gid,66/Itemid,
84/, 2008.
[9] B.M. Michelson: Event-Driven Architecture Overview - Event-Driven SOA Is
Just Part of the EDA Story,
http://soa.omg.org/Uploaded%20Docs/EDA/bda2-2-06cc.pdf, 2006.
[10] A. Barros, G. Decker und A. Grosskopf: Complex Events in Business
Processes, in: W. Abramowicz (Hrsg.): Business Information Systems,
Springer, Berlin, Heidelberg, 2007, S. 29-40.
[11] M. Gualtieri und J.R. Rymer: The Forrester Wave™: Complex Event
Processing (CEP) Platforms, Q3 2009,
http://www.forrester.com/rb/Research/wave&trade%3B_complex_event_pr
ocessing_cep_platforms,_q3/q/id/48084/t/2, 2009.
[12] C. Kanaracus: Tibco Beefs up Business Events Processing Wares,
http://www.cio.com/article/450524/Tibco_Beefs_Up_Business_Events_Proc
essing_Wares, 2008.
80
Fraunhofer IAO
Marktübersicht Real-Time Monitoring Software
F R A U N H O F E R - I N S T I T U T F Ü R ar b eits w irts c haft un d or g anisation iao
Krešimir Vidačković, Thomas Renner, Sascha Rex
Marktübersicht
Real-Time Monitoring Software
Event Processing Tools im Überblick
Mit Complex Event Processing (CEP) und Event Stream Processing (ESP) stehen
neue Technologien zur Verfügung, mittels derer das Real-Time Monitoring
signifikanter Ereignisse und deren Beziehungen untereinander mit hohen
Verarbeitungsgeschwindigkeiten ermöglicht wird. Somit wird das Auslösen
unmittelbarer Reaktionen auf bestimmte Ereignisse und kritische Zustände nach
dem Push-Prinzip realisierbar.
Die vorliegende Marktübersicht liefert einen Einblick in die Funktionalitäten der
derzeit am Markt verfügbaren Event Processing Tools. Diese bieten neben der
reinen Ereignisverarbeitung in Echtzeit meist auch vielfältige Adapter zur Integration
in die vorliegende IT-Landschaft, Modellierungs- und Analysetools sowie
Dashboards zur visuellen Darstellung. Neben kommerziellen Produkten werden
auch ausgereifte Open Source-Lösungen betrachtet.
ISBN 978-3-8396-0185-3
9 783 839 60 1853
Fraunhofer Verlag
Marktübersicht Real-Time Monitoring Software
Aufgrund der stetig wachsenden Komplexität und Dynamik in der heutigen Zeit
erfordern viele Unternehmensanwendungen und Prozesse ein hohes Maß an
Transparenz und Agilität. Zudem steigen die Anforderungen nach einer
kontinuierlichen Verarbeitung von internen und externen Daten in Echtzeit und
mit zunehmenden Datenmengen.
Herunterladen