Aufrufe
vor 3 Jahren

01 | 2012 NEWS

  • Text
  • Experten
  • Banking
  • Technologie
  • Sicherheit
  • Msggillardon
  • Ikano
  • Basel
  • Anforderungen
  • Banken
  • Produkte
  • Analyse
  • Informationen
  • Operational
Emotional oder rational

u Business u

u Business u Informationstechnologie In-Memory-Datenbanken – Next Generation of Database Technology In-Memory-Datenbanken beschleunigen den Zugriff auf Anwendungsdaten im Vergleich zu traditionellen Datenbanken erheblich, da sämtliche Daten während der Verarbeitung im Hauptspeicher gehalten werden. Das liegt zum einen am schnelleren Zugriff auf den Hauptspeicher im Vergleich zu herkömmlichen Festplatten. Zum anderen ergänzen die Trends hin zu Mehrkern- Architekturen und Parallelprogrammierung den Ansatz der In-Memory-Datenverarbeitung. Die Kombinationen dieser Ansätze ermöglicht einen hohen Performancegewinn beim Lesen und Schreiben der Daten, vor allem aber bei Aggregationen über den gesamten Datenbestand. Mittels Komprimierung und einer spaltenbasierten Ablagestruktur, die keinen Speicherplatz für leere Felder beansprucht, ist es zudem möglich, Datenbestände im Terabyte-Bereich hochperformant zu verarbeiten. Um die bei Datenbanken oftmals gewünschten ACID-Eigenschaften – Atomicity, Consistency, Integrity and Durability – für Anwendungen gewährleisten zu können, werden zusätzlich Festplatten oder spezielle Speichermodule (NVRAM) für die Persistenz eingesetzt. Business Impact: Durch In-Memory-Datenbanken entstehen neue Anwendungen und fachliche Anwendungsfälle, die durch die Performance der Systeme erst möglich werden. Die Realtime- Auswertungen tragen zur schnelleren Entscheidungsfindung in den Prozessen der Unternehmen bei und sind dabei so schnell, dass sie teilweise die bisherigen aufwendig vorausberechneten mehrdimensionalen Datenbanken (Cubes) ersetzen können. Erste Lösungsarchitektur Mit „einfachen Mitteln“ war die vom betreffenden Institut vorgegebene Zeit nicht einzuhalten, sodass die Verarbeitung stark parallelisiert werden musste. > > Die Programmiersprache Java bietet dafür gute Unterstützung (z. B. ExecutorService und Callables). > > Der nötige hohe Parallelisierungsgrad stellte auch große Anforderungen an die Infrastruktur, denen mit einem sehr gut ausgestatteten Server mit 128 GB Hauptspeicher und 64 Prozessoren begegnet wurde. Bei zwei parallelen Läufen stehen damit 32 CPUs pro Lauf zur Verfügung. Damit sind theoretisch in vier Stunden 60 Mio. Statements durchführbar, wenn ein Statement im Durchschnitt nicht länger als 7,68 ms dauert. Dieser knappe Rahmen musste also für den Netzwerkzugriff sowie Lesen, Verarbeiten und Speichern der Daten in der Datenbank ausreichen. Caching-Mechanismen erzielen hier keine Verbesserung, da die gesamte Datenmenge algorithmisch bedingt genau einmal durchlaufen wird und damit die einzelnen Abfragen jeweils auf unterschiedliche Datenbereiche zugreifen. Unserer Erfahrung nach ist es nicht möglich, die geforderten Zeiten mit einer klassischen relationalen Datenbank zu erreichen. Hohe Performancesteigerung mit In-Memory-Nutzung Das Team kam zu dem Schluss, dass eine In-Memory-Datenbank die Lösung darstellen könnte, und erstellte einen funktionalen Prototypen, um die erwartete Performance zu messen und zu bestätigen. Die ersten Ergebnisse waren positiv, und so fiel die Wahl auf die Open-Source-Datenbank H2. Versuche mit weiteren freien Alternativen HSQL und Jetty zeigten, dass H2 um den Faktor 10-15 schnellere Ergebnisse lieferte. Kommerzielle Produkte wurden aus Zeitgründen nicht näher untersucht, zusätz- 42 I NEWS 01/2012

Business t Informationstechnologie t lich skalieren die Lizenzmodelle der Hersteller mit der Anzahl der CPUs, was mit der geplanten Hardware zu sehr hohen Kosten geführt hätte. Der Prozessablauf wurde wie folgt festgelegt: > > Die Daten werden aus Vorsystemen gesammelt und in einer DB/2-Datenbank abgespeichert. > > Für den Abstimmlauf werden sie am Stück aus der DB/2- in die H2-In-Memory-Datenbank gelesen. > > Die einzelnen lesenden Zugriffe werden auf der In-Memory- Datenbank durchgeführt. > > Die Ergebnisse werden in Paketen in die Ergebnistabelle der DB/2-Datenbank geschrieben. Aktuell ergeben sich unter Nutzung von zehn Prozessoren je Abstimmlauf folgende Zeiten: Die 60 Mio. SQL-Statements werden in etwa 16 Minuten abgearbeitet. Dies entspricht einem Mittelwert von 0,16 ms (160.000 ns) je Abfrage. Weitere Tuning-Maßnahmen Es gilt Amdahls Law der Parallelisierung, wobei „F“ der Prozentanteil des Programms, der nicht parallelisiert werden kann, und „n“ der Grad der Parallelisierung ist. Maximale Verbesserung = 1 / [F + (1 - F / n)] Zusammenfassung Der Einsatz einer In-Memory-Datenbank hat sich als sehr lohnend und als kritischer Erfolgsfaktor für das Projekt erwiesen. Obwohl in diesem Projekt hochspezialisierte Anforderungen vorlagen und die Lösung mit dynamisch erzeugten SQL-Statements speziell auf die Kundenanforderungen zugeschnitten wurde, lässt sich der In- Memory-Ansatz gut verallgemeinern und wird von msgGillardon auch bereits in weiteren Projekten erfolgreich eingesetzt. Falls keine rein lesende Verarbeitung vorliegt, ist das Risiko eines Stromausfalls zu beachten. Dem möglichen Datenverlust kann man aber wie hier über einen Hybridansatz aus In-Memory-Datenbank für den lesenden Zugriff und eine gekoppelte klassische relationale Datenbank gut begegnen. Um diese Ergebnisse zu erreichen, durchliefen die generierten SQL-Statements eine mehrwöchige Tuningphase. Zusätzlich wurden die Daten in H2 gezielt denormalisiert abgespeichert, um bessere Ergebnisse zu erzielen. Mit der Anzahl der CPUs wurde experimentiert, da sich herausstellte, dass mehr Prozessoren nicht zwangsläufig zu einer schnelleren Verarbeitung führen. Der Virtual Machine sollten mindestens zwei CPUs für die Thread-Verwaltung und die Hauptspeicherverwaltung (Garbage Collection) zur Verfügung gestellt werden. Der Grad der Parallelisierung ist allgemein durch den garantiert sequentiell auszuführenden Teil des Programms (synchronized Codeblöcke) beschränkt. Die besten Ergebnisse werden daher erzielt, wenn diese Teile minimiert oder komplett eliminiert werden. Autoren Hans-Peter Keilhofer Lead IT Consultant IT-Architecture, msgGillardon AG > +49 (0) 851 / 56069 - 4164 > hans-peter.keilhofer@msg-gillardon.de Christian Schmitz Leiter Competence Center Java Enterprise, msgGillardon AG > +49 (0) 89 / 943011 - 2246 > christian.schmitz@msg-gillardon.de NEWS 01/2012 I 43

msg

01 | 2018 public
02 | 2017 public
01 | 2017 public
02 | 2016 public
01 | 2016 public
02 | 2015 public
01 | 2015 public
01 | 2014 public
01 | 2014 msg systems study
01 | 2015 msg systems Studienband
Future Utility 2030
Lünendonk® Trendstudie
Digitale Transformation | DE
Digital Transformation | EN
DE | inscom 2014 Report
EN | inscom 2014 Report

msgGillardon

03 | 2016 NEWS
02 | 2016 NEWS
01 | 2016 NEWS
03 | 2015 NEWS
02 | 2015 NEWS
01 | 2015 NEWS
02 | 2014 NEWS
01 | 2014 NEWS
02 | 2013 NEWS
01 | 2012 NEWS
02 | 2011 NEWS
01 | 2010 NEWS
MaRisk
01 | 2017 banking insight
01 | 2015 banking insight
01 | 2014 banking insight
01 | 2013 banking insight
01 | 2012 banking insight
02 | 2011 banking insight
01 | 2011 banking insight
01 | 2010 banking insight
2016 | Seminarkatalog | Finanzen

Über msg



msg ist eine unabhängige, international agierende Unternehmensgruppe mit weltweit mehr als 6.000 Mitarbeitern. Sie bietet ein ganzheitliches Leistungsspektrum aus einfallsreicher strategischer Beratung und intelligenten, nachhaltig wertschöpfenden IT-Lösungen für die Branchen Automotive, Banking, Food, Insurance, Life Science & Healthcare, Public Sector, Telecommunications, Travel & Logistics sowie Utilities und hat in über 35 Jahren einen ausgezeichneten Ruf als Branchenspezialist erworben.

Die Bandbreite unterschiedlicher Branchen- und Themenschwerpunkte decken im Unternehmensverbund eigenständige Gesellschaften ab: Dabei bildet die msg systems ag den zentralen Kern der Unternehmensgruppe und arbeitet mit den Gesellschaften fachlich und organisatorisch eng zusammen. So werden die Kompetenzen, Erfahrungen und das Know-how aller Mitglieder zu einem ganzheitlichen Lösungsportfolio mit messbarem Mehrwert für die Kunden gebündelt. msg nimmt im Ranking der IT-Beratungs- und Systemintegrationsunternehmen in Deutschland Platz 7 ein.


© 2018 by msg systems ag - powered by yumpu Datenschutz | Impressum