F achbeitrag - trivadis.com

Werbung
ger Business Intelligence beim IT-Lösungsanbieter Trivadis mit Hauptsitz in Basel und
Niederlassungen in der Schweiz, Deutschland
und Österreich.
E-Mail: [email protected]
S o nderdr u c k
aus BI-Spektrum
Sonderausgabe tdwi 2008
für
Peter Welkenbach verfügt über mehr als
zehn Jahre Erfahrung mit objektorientierten Systemen und komplexen Integrationsarchitekturen.
Als Principal Consultant, Trainer und Mitglied
des Architektur Boards von Trivadis liegt sein
aktueller Schwerpunkt auf modernen EnterpriseArchitekturen und deren Bedeutung für zukunftsorientierte Geschäftsstrategien.
E-Mail: [email protected]
GRID-Computing
Neue Echtzeit-BIModelle verändern
die Finanzwelt
Bereits in den 90er Jahren, nach Einführung der ersten
BI-Applikationen, wurde erkannt, dass ein Data Warehouse (DWH) nicht nur zum Reporting von Managementinformationen dienen kann. Aus der anfänglichen,
produktorientierten Sicht auf die Daten zur vornehmlichen Analyse von Vertriebsinformationen entwickelte sich mehr und mehr eine kundenorientierte Sicht im
Zuge von Customer-Relationship-Management-Initiativen (CRM). Mit dieser Entwicklung wurde auch der unschätzbare Wert eines konsolidierten DWH klarer: Die
Daten konnten zum Beispiel genutzt werden, um Kundenabrechnungen von historischen Umsätzen abhängig
zu machen oder Kundenkontakte zu analysieren und
so Kampagnen effizienter durchzuführen. Insbesondere
durch das analytische CRM wurden in der Vergangenheit
erste BI-Applikationen mit operativem Charakter aufgebaut. Die strikte Trennung zwischen BI und operativer
Welt begann zu bröckeln.
Heute gibt es eine Vielzahl von Entwicklungen, die diese
Auflösung der Trennung in operative Systeme und dispositive BI forcieren. Hierzu gehören unter anderem analytische
Anforderungen im Kundensupport, bei Cross-Selling-Initiativen, bei der Kündigungsbearbeitung, in der Betrugsaufdeckung, im Supply-Chain-Management oder bei der Steuerung von Produktionsprozessen. Entscheidend dabei ist,
dass durch die engere Verzahnung von BI und operativen
Prozessen auch die so genannte Datenlatenz, das heißt die
Zeit zwischen Aufkommen eines Datums im operativen
System und der Verarbeitung durch den Ladeprozess ins
DWH, immer stärker in den Vordergrund rückt. Dies ist
nicht zu verwechseln mit der zuvor diskutierten Nutzungsart des BI-Systems für strategische, taktische oder operative Entscheidungen. Realtime- oder Near-Realtime-BI ist
eben nur ein Spezialfall von operativer BI.
Dies erfordert Architekturen, die BI-Funktionalitäten auf
Daten anbieten mit sehr kurzer Verfügbarkeitsverzögerung
im Stunden-, Minuten- oder gar Sekundentakt. Insbesondere die Verknüpfung dieser Daten mit historischen Daten
aus dem DWH ist ein überaus spannendes Feld der BI.
Kaum sind Architekturen dieser Art realisierbar, kommt
jedoch bereits die nächste Welle an Anforderungen – so
zum Beispiel im Finanzmarkt. Dieser ist geprägt von
Datenmengen, die in Echtzeit nicht mehr zu analysieren sind. Zum einen, da sie etwa Börsendaten enthalten,
die mehr oder weniger parallel auf der ganzen Welt über
Daten-Feeds wie Reuters oder den CEP der Deutschen
Börse eingespielt werden. Zum anderen, da sie gegebenenfalls komplexe Strukturen beinhalten, die erst in einen sinnvollen Zusammenhang gebracht werden müssen.
Hierzu zählen zum Beispiel Unternehmensmeldungen,
die Ereignisse wie komplette Risikoneuberechnungen
auslösen können, oder auch Wertpapier-Ticks, die zuerst
zu einem Kurs oder Index verdichtet werden müssen. Das
aber ist Voraussetzung, um Services anzubieten wie die
Top 10 der gehandelten Wertpapiere der letzen fünf Minuten oder Informationen über Aktien, die an bestimmten
Börsen bereits um einen bestimmten Prozentsatz gestiegen oder gefallen sind, an anderen Handelsplätzen jedoch
noch nicht.
Grundsätzlich versagen existierende BI-Architekturen
bei Anforderungen dieser Art. Sie sind heute nicht in der
F achbeitrag
Jan-Henrik Fischer ist Solution Mana-
BI-spektrum l TDWI-Sonderheft 2008
13
F achbeitrag
Lage, parallel große Datenmengen
global in Echtzeit mehrstufig zu verarbeiten, dabei diese Daten temporär zu
komplexen Informationen zusammenzufügen, Ereignisse abzuleiten, die
mit Analysen auf historischen Daten
begründet und gegebenenfalls kombiniert sind, und die erarbeiteten Regeln
in Echtzeit auf Datenfeeds anwenden.
Um diesen Anforderungen gerecht
zu werden, ist eine Kombination aus
bekannten Near-Realtime-Mechanismen, hochskalierbaren Parallel-GridArchitekturen und Engines zum Complex Event Processing (CEP) denkbar.
Realtime-BI löst die Trennung operativ-dispositiv
Prozesse
DWH
BI Server
Abb. 1: Schematische Near-Realtime-Architektur : Entweder wird über Adapter direkt auf die
operative Datenbasis zugegriffen oder es wird eine spezielle Datenzwischenhaltung (Operational Data Store – ODS beziehungsweise Low Latency Data Mart – LLDM) genutzt mit
geringer Latenz zur Speicherung und Vorverarbeitung der operativen Daten.
Complex Event Processing System
Historical
Data
Business Processes
Computer Systems
Production Systems
Etc.
Complex Event
Event Publisher
Event Subscriber A
Event Subscriber B
Event
Topic A
Router
Topic B
Message Broker
Abb 2: Klassische Event-Verarbeitung mit Messaging
Im klassischen Architekturszenario werden eine Messaging-Middleware als zentrales Element
zur Event-Vermittlung sowie Loadbalancing und Failover eingesetzt. Events werden durch
Publisher an die Middleware gesendet, die Middleware sorgt für ein Routing der Events, und
angemeldete Subscriber erhalten einfache oder bereits aggregierte Events zu einer weiteren
Auswertung zugestellt.
Beispiel einer CQL-Abfrage aus
dem Oracle CEP Whitepaper:
IF MSFT price moves outside 2%
of MSFT-15-minute-VWAP
(volumeweighted average price)
FOLLOWED BY S&P moving by 0.5%
AND IBM‘s price moves up by 5%
OR MSFT‘s price moves down by 2%
ALL within a 2 minute time window
THEN BUY MSFT and SELL IBM;
BI-spektrum l TDWI-Sonderheft 2008
14
ETL
ODS
Complex Event Processing
und
Event Driven Architectures
(EDA)
Bei Complex Event Processing handelt es sich um eine Technologie für
kontinuierliche Echtzeit-Datenanalyse. Als ihr geistiger Vater gilt David
Luckham von der Stanford University [Luc02]. Mit dieser Technologie
versucht man, multiple Ereignisse
aus der Gesamtheit von einfachen
und komplexen Ereignissen innerhalb
eines Ereigniskontinuums (auch Ereigniswolke) zu untersuchen, mit dem
Ziel, die für sein Anliegen relevanten
Ereignisse zu identifizieren und sie einer zeitlichen Korrelation zuzuordnen.
Eine wesentliche Komponente von
CEP-Engines ist die Continous Query
Language (CQL), die nicht umsonst
eine namentliche Verwandtschaft mit
Operative Systeme
dem sonst im BI so wichtigen SQL hat. Diese Sprache
ähnelt im Aufbau dem SQL, kann aber aktiv auf Datenströme angewandt werden und beinhaltet neue Elemente,
insbesondere das relative Zeitfenster. So können Abfragen, die als SQL-Statements vom BI-Server komplexe
Events formulieren, zum Beispiel auf Datenströme der
letzten fünf Minuten angewandt werden. CQL bildet die
Verbindung zum klassischen BI.
Event-Middleware
Basis einer CEP-Engine ist eine Middleware, die für den
Transport der Ereignisse in sinnvoller Form sorgt. Die
Verwandtschaft mit einer serviceorientierten Architektur
GRIDs
Der Begriff GRID ist nicht eng eingegrenzt. Unterschiedliche Quellen definieren den Begriff durchaus mit unterschiedlichen Bedeutungsrahmen. Joshy Joseph definiert
ein Grid wie folgt [Jos04]: „Grids repräsentieren ein verteiltes System für gemeinsame Resourcen der beteiligten
Teilnehmer […]. Grids stellen eine verteilte Architektur
dar, welche die Problemkreise eines verteilten Computing Grid mit niedriger Latenz, Nebenläufigkeit und Ausfallsicherheit adressiert.“
Unter einem Data-Grid wird ein System verstanden, welches den Applikationen einen gemeinsamen
Speicherbereich über alle Knoten des Grids hinweg
zur Verfügung stellt. Eine einzelne Applikation, in unserem Falle also eine CEP-Engine, kann somit über
wesentlich mehr Speicher für Berechnungen verfügen, als ein einzelner Rechner ermöglicht. Diese Problematik ist zwar in Zeiten von 64-Bit-Architekturen
nicht mehr so relevant wie früher, jedoch ermöglicht
die Verteilung auch eine Ausfallsicherheit, da die Daten im Grid auf unterschiedlichen Knoten redundant
vorgehalten werden können. Data-Grids werden heutzutage häufig mit Computational-Grids gemeinsam
genutzt, beziehungsweise wird die Funktionalität von
F achbeitrag
(SOA) legt nahe, dass man für moderne
Complex Event Processing System
Ansätze eine Art ESB (Enterprise Service
Historical
Data
Business Processes
Complex Event
Bus) als moderne Integrationsplattform
Computer Systems
Production Systems
wählen wird, beziehungsweise dass eine
Etc.
CEP-Engine als Service in eine EDA integriert werden kann. Externe Ereignisse
Event Producer
werden durch spezifische Producer (AdEvent Consumer A
Event Consumer B
apter) zum ESB gemeldet und dort in ein
Event
internes Nachrichtenformat transformiert.
Sie müssen anschließend als Nachricht
dem jeweiligen Consumer (CEP-Agents,
CEP-Engine) zugeführt werden.
Node
A
Durch die Verbindung von klassischen
BI-Architekturen mit CEP-Engines ist
Node
n
es nun möglich, die komplexen Strukturen, die durch die detaillierte BI-Analyse
GRID
entdeckt wurden, auf Echtzeit-Datenströme anzuwenden, zum Beispiel Er- Abb 3: CRI Übersicht.
eignisse sich ändernder Börsenkurse im Die messaging-basierte Middleware wird durch Grid-Technologie ersetzt. Dies ermöglicht
Verhältnis zu anderen Ereignissen wie die Nutzung auch größerer Server-Cluster (Node A bis Node N), auf denen eine DatenvorFirmeninformationen – eine hervorra- haltung, Datentransport, Skalierbarkeit und Hochverfügbarkeit durch die Grid-Infrastruktur
gende Technologie, um die Datenflut der gewährleistet wird. Weiterhin sind somit auf der Grid-Ebene je nach Produkt zusätzliche
Finanzwelt auf Relevanz zu prüfen. Wie Grid-Funktionalitäten (wie z. B. höchst performante, parallelisierbare clusterweite Aggreaber garantiert man die parallele Ver- gationen und Berechnungen) verfügbar, welche die klassische Eventverarbeitung ergänzen.
arbeitung von Datenfeeds, die weltweit
auftreten? Wie lässt sich die immens hohe Skalierbar- Data- und Computational-Grid in ein und demselben
keit und Ausfallsicherheit gewährleisten, ohne dies Produkt angeboten. Computational-Grids erlauben es,
zu Lasten der Latenz realisieren zu müssen? Bei dieser die Rechenoperationen parallel über das Grid verteilt
Frage werden so genannte Grid-Architekturen relevant.
auszuführen und dienen somit der Erhöhung der potenziellen Rechenleistung.
Wesentliche Aufgaben von Grids sind:
◆ Distributed Caching und Processing: Daten werden
über alle Gridknoten verteilt. Hierzu sind unterschiedliche Verteilungstopologien und -strategien möglich.
Ein Data-Grid kann in unterschiedliche, von einander
getrennte Sub-Caches unterteilt werden. Dies erlaubt
effektivere Zugriffsmechanismen durch Vorfilterung.
Die Verteilung der Daten über verschiedene physikalische Knoten hinweg garantiert eine dauerhafte
Verfügbarkeit und Datenintegrität der Daten auch im
Fehlerfall einzelner Knoten. Das automatische Fail­
over-Verhalten und die Loadbalancing-Funktionalität sind Teil der Grid-Infrastrukturkomponente. Die
Transaktionssicherheit auch über den kompletten Grid
hinweg wird gewährleistet.
◆ Event Driven Processing: Funktionalität von Computational-Grids. Rechenoperationen und Transaktionen
können parallel über alle Grid-Knoten hinweg durchgeführt werden. Eine einfache Ereignisverarbeitung,
ähnlich dem Triggermechanismus von Datenbanken,
sorgt dafür, dass auf Datenänderungen reagiert werden
kann. Einzeldaten im Grid können mit dem Konzept
von In-Memory-Views und In-Memory-MaterializedViews zu komplexeren Datenkonstrukten zusammengefasst werden.
BI-spektrum l TDWI-Sonderheft 2008
15
F achbeitrag
CRI als neues Architekturkonzept
Wir haben gesehen, dass Complex Event Processing als
Real-Time-Analyse vielfältige Möglichkeiten bietet. Diese
Möglichkeiten ergeben sich vor allem für komplexe Abfragen auf Datenströmen, die jedoch dann entsprechende
Anforderungen an die Laufzeitumgebung stellen. Weiterhin haben wir aufgezeigt, wie sich heutzutage Grid-Technologien nutzen lassen und wie aktuelle Konzepte zur
Verschmelzung von SOA mit Grid-Technologie aussehen.
Nun liegt es nahe, die Fähigkeiten der beiden Technologien Complex Event Processing und SOA-Grid zusammen zu nutzen und somit dem Business hochskalierbare
Analyseapplikationen für komplexe Mustererkennungen in
Echtzeitszenarien zur Verfügung stellen zu können. Diese
Verschmelzung der Technologien bezeichnen wir als Complex Realtime Intelligence, kurz CRI. Im Grunde genommen handelt es sich hierbei im einfachsten Fall um eine
Event-Driven-Architecture mit Complex Event Processing
Engines als Consumern, wobei der Nachrichtentransport
und auch eine Voranalyse und Vorfilterung feingranularer
Einzelereignisse mit Grid-Technologie erfolgt. Die Infrastrukturkomponenten des Grids sorgen auch für ein Loadbalancing, Ausfallsicherheit und Verfügbarkeit von historischen Daten aus Datamarts im In-Memory-Cache.
Abbildung 3 zeigt die grundsätzliche Idee hinter dem
CRI-Konzept. Event-Producer (Prozesse, Systeme, etc.)
speisen über Adaptoren in das Gesamtsystem ein. Ein
GRID sorgt für die skalierbare Verteilung dieser Events,
die dann von angeschlossenen Event-Consumern analysiert und auch als komplexe Events verarbeitet werden
können. Diese können mit historischen Daten korreliert
werden oder aber auch in die Systeme mit den historischen Daten weitergeleitet werden.
BI-spektrum l TDWI-Sonderheft 2008
16
Die Kombination aus Grid und CEP erlaubt es, mit
einfachen Mitteln höchst skalierbare, aber dennoch
einfach wartbare Auswertungsarchitekturen für Neartime-BI zu schaffen. Hier wird es in naher Zukunft sicherlich noch weitere Architektur-Blueprints und BestPractice-Beschreibungen geben, um diese Technologien
einfach und gewinnbringend im eigenen Unternehmen
zu integrieren. Nach unserer Einschätzung werden Finanzinstitute die ersten Adaptoren dieser Technologien
sein, profitieren sie doch am meisten von der Verbindung
komplexer Analyse mit weltweit durchleuchteten Echtzeit-Events – in den Risiko- und Börsensystemen zählt
jede Sekunde, die an Latenz eingespart werden kann.
Literatur
[Jos04] Joseph Joshy, Fellenstein Craig: Grid Computing,
Prentice Hall, 2004.
[Luc02] Luckham David: The Power of Events: An Introduction to Complex Event Processing in Distributed
Enterprise Systems, Addison-Wesley Longman, 2002.
BI-SPEKTRUM
ist eine Fachpublikation des Verlags:
SIGS DATACOM GmbH · Lindlaustraße 2c · 53842 Troisdorf
Tel.: 0 22 41/23 41-100 · Fax: 0 22 41/23 41-199
E-mail: [email protected] · www.bi-spektrum.de
www.sigs.de/publications/aboservice.htm
Herunterladen