w26M2
w26M2
w26M2
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Gerade im Webumfeld oder im Wertpapierhandel haben<br />
sich Anwendungsfälle entwickelt, die besondere Ansprüche<br />
an die Antwortzeiten von transaktionalen Datenbanken<br />
haben und in kürzester Zeit sehr viele Transaktionen<br />
durchführen müssen. Ähnlich verhält es sich mit dem<br />
automatisierten oder algorithmischen Handel von Wertpapieren.<br />
Dabei kommt es auf jede Millisekunde an. Um<br />
solche Antwortzeiten bei Datenbanken zu gewährleisten,<br />
werden Operationen nur noch im Hauptspeicher durchgeführt<br />
und erst zeitversetzt persistent auf die Festplatte<br />
geschrieben. Da dieser Anwendungsfall sich grundsätzlich<br />
von den zuvor beschriebenen Anwendungsfällen<br />
der analytischen Datenbanken unterscheidet, kommen<br />
auch grundverschiedene Technologien zum Einsatz.<br />
In transaktionalen Systemen bietet zum Beispiel die<br />
spaltenbasierte Speicherung keinerlei Vorteile, auch ist<br />
die massiv-parallele Verarbeitung eher ein Hindernis, da<br />
Transaktionen erst über mehrere Rechner synchronisiert<br />
werden müssen.<br />
• 6.3 Akka und Scala<br />
Die im Abschnitt 3.3 aufgezeigten Spannungsgebiete<br />
Verteilungsfähigkeit, Konstruktion und Anwendungsarchitektur<br />
stellen besondere Anforderungen an Software-Frameworks.<br />
Dazu gehören:<br />
• belastbar bzw. widerstandsfähig<br />
(hohe Ausfallsicherheit bei verteilter Verarbeitung<br />
durch automatische Fehlerbehebungsmechanismen),<br />
• skalierbar<br />
(Erhöhung der Kapazität ohne Anpassung des<br />
Programmcodes),<br />
• ereignisgetrieben<br />
(in der Verarbeitungsebene und in Echtzeitanalyse),<br />
• benutzerorientiert<br />
(kurze Antwortzeiten, hohe Erreichbarkeit).<br />
Entscheidende Grundlage: Aktorenmodell<br />
In einzelnen Fällen werden nicht Standardarchitekturen,<br />
sondern individuelle Strukturen implementiert. Das<br />
eingesetzte Framework bestimmt den Lösungsraum der<br />
Architektur.<br />
Das Aktorenmodell erfüllt alle vier zuvor genannten<br />
Anforderungen. Schon seit 1973 189 bekannt, zeigte es<br />
1995 seinen kommerziellen Nutzen 190 : Das erstellte<br />
Produkt 191 wies eine Verfügbarkeit von neun Neunen auf<br />
(= 99,9999999% Verfügbarkeit) – weniger als 30 Millisekunden<br />
Ausfallzeit im Jahr.<br />
Akka<br />
Das Open Source Framework Akka 192 bildet dieses<br />
Aktorenmodell ab und erweitert es aufgrund aktueller<br />
Erkenntnisse. Es ist seit 2011 im kommerziellen Einsatz.<br />
Die Implementierung auf der JVM (in Scala, vgl. S. 131)<br />
führt dabei zur Fähigkeit, hochintegrierbar zu sein.<br />
189<br />
1973 von Carl Hewitt vorgeschlagen<br />
190<br />
Die Architektur war damals in Erlang realisiert worden.<br />
191<br />
Switch AXD 301 von Ericsson<br />
192<br />
www.akka.io<br />
130