In-Memory-Datengitter im Vergleich zu In-Memory-Datenbanken

Die Einführung von In-Memory-Computing beschleunigt sich weiter. Mit ausgereiften Lösungen können Unternehmen die Geschwindigkeit und Skalierbarkeit der Datenbankverarbeitung erreichen, die sie für ihre Initiativen zur digitalen Transformation und zum Omnichannel-Kundenerlebnis benötigen. Zum Beispiel nutzte die Investmentfirma Wellington Management eine In-Memory-Computing-Plattform, um ihr Investment Book of Record (IBOR) zu beschleunigen und zu skalieren, die einzige Quelle der Wahrheit für Anlegerpositionen, Engagement, Bewertungen und Performance. Alle Echtzeit-Handelstransaktionen, alle damit verbundenen Kontoaktivitäten, Daten von Drittanbietern wie Marktnotierungen und alle damit verbundenen Back-Office-Aktivitäten werden in Echtzeit über die IBOR abgewickelt. Das IBOR unterstützt auch Leistungsanalysen, Risikobewertungen, Einhaltung gesetzlicher Vorschriften und mehr. In verschiedenen TestsDie neue Plattform war mindestens zehnmal schneller als das Legacy-System des Unternehmens, das direkt auf einer relationalen Oracle-Datenbank basiert.

Nikita Ivanov ist CTO bei GridGain Systems, das In-Memory-Computing-Lösungen entwickelt.

Gartner prognostiziert, dass bis 2019 75 Prozent der Cloud-nativen Anwendungsentwicklung In-Memory-Computing oder Dienste mit In-Memory-Computing verwenden werden, damit Mainstream-Entwickler leistungsstarke, massiv skalierbare Anwendungen implementieren können. Entwickler, die noch keine Erfahrung mit In-Memory-Computing-Technologien haben, müssen jedoch ein Verständnis für die verschiedenen Strategien zum Hinzufügen der Technologie zu ihren Architekturen entwickeln. In den meisten Fällen müssen sie zunächst entscheiden, ob ein In-Memory-Datenraster oder eine In-Memory-Datenbank bereitgestellt werden soll. Diese Entscheidung wird in erster Linie davon abhängen, ob sie beabsichtigen, vorhandene Anwendungen zu beschleunigen, neue Anwendungen zu entwickeln oder vorhandene vollständig zu überarbeiten oder die Möglichkeit zu sehen, beides zu tun. Sie müssen auch überlegen, welche Schicht als Aufzeichnungssystem dient.die In-Memory-Computing-Schicht oder die zugrunde liegende Datenschicht.

Lassen Sie uns die In-Memory-Computing-Technologien untersuchen, die zur Implementierung dieser Strategien erforderlich sind.

In-Memory-Datengitter

Ein In-Memory-Datenraster (IMDG) kopiert festplattenbasierte Daten aus RDBMS-, NoSQL- oder Hadoop-Datenbanken in den RAM, wo die Verarbeitung ohne Verzögerungen durch kontinuierliches Lesen und Schreiben der Festplatte erfolgt. Das speicherinterne Datenraster wird zwischen der Anwendungs- und der Datenschicht eingefügt und auf einem Cluster von Serverknoten bereitgestellt. Es teilt den verfügbaren Speicher und die CPU des Clusters. Unabhängig davon, ob sie in einer öffentlichen oder privaten Cloud-Umgebung, lokal oder in einer Hybridumgebung bereitgestellt werden, kann ein speicherinternes Datenraster einfach durch Hinzufügen eines neuen Knotens zum Cluster skaliert werden. Einige speicherinterne Datenraster unterstützen ANSI-99-SQL- und ACID-Transaktionen, erweiterte Sicherheit, maschinelles Lernen sowie native Integrationen von Spark, Cassandra und Hadoop.

Ein In-Memory-Datenraster ist eine einfache und kostengünstige Lösung für vorhandene Anwendungen. Viele speicherinterne Datengitter erfordern jedoch, dass alle Daten in der zugrunde liegenden festplattenbasierten Datenbank in den Speicher passen, sodass ein Unternehmen genügend Speicher erwerben muss, um alle Daten zu speichern. Da Speicher immer noch teurer als Festplatte ist, ziehen es viele Unternehmen möglicherweise vor, einige Daten nur auf der Festplatte zu speichern. Neue speicherzentrierte Architekturen lösen dieses Problem, indem sie den gesamten Datensatz verarbeiten, selbst wenn ein Teil der Daten auf der Festplatte gespeichert ist. Durch diese Funktion zum dauerhaften Speichern kann die Datenmenge die Speichermenge überschreiten. Dies bedeutet, dass Daten so optimiert werden können, dass sich alle Daten auf der Festplatte befinden. Häufiger verwendete Daten befinden sich jedoch auch im Arbeitsspeicher, während sich selten verwendete Daten nur im Speicher befindenauf der Festplatte. Ein weiterer wichtiger Vorteil besteht darin, dass ein System mit einem dauerhaften Speicher nach einem Neustart sofort mit der Verarbeitung des Datasets auf der Festplatte beginnen kann, ohne darauf zu warten, dass das Dataset in den Speicher geladen wird.

Workday, ein Finanz- und HR-SaaS-Lösungsanbieter für Fortune 50-Unternehmen, berichtete, wie er mithilfe eines In-Memory-Datengitters etwa 189 Millionen Transaktionen pro Tag verarbeitet, was einem Höchststand von rund 289 Millionen pro Tag entspricht. Zum Vergleich verarbeitet Twitter ungefähr 500 Millionen Tweets pro Tag.

In-Memory-Datenbank

Eine In-Memory-Datenbank (IMDB) eignet sich am besten für neue oder neu strukturierte Anwendungen. Es handelt sich um eine eigenständige Datenbank mit vollem Funktionsumfang, die im Arbeitsspeicher ausgeführt wird und Datenverarbeitungs-APIs wie ANSI-99 SQL, Schlüsselwert-, Rechen- und maschinelles Lernen unterstützt. Der Vorteil einer In-Memory-Datenbank gegenüber einem In-Memory-Datenraster besteht darin, dass die Architektur von drei Schichten (Anwendung, In-Memory und Daten) auf zwei reduziert wird. Der Nachteil ist, dass es nicht für eine vorhandene Anwendung verwendet werden kann, ohne dass der Datensatz aus der vorhandenen Datenbank entfernt und verschoben werden muss. Da eine In-Memory-Datenbank als Aufzeichnungssystem dient, muss die Lösung außerdem eine Strategie zum Schutz der Daten bei Ausfallzeiten enthalten. Diese Strategie kann der für speicherinterne Datengitter diskutierten dauerhaften Speicherfähigkeit ähnlich sein oder die Verwendung von nichtflüchtigem RAM beinhalten.Eine neue Technologie, die in Zukunft wahrscheinlich eine immer wichtigere Rolle spielen wird.

Heute verwendet eine große Bank mit 135 Millionen Kunden eine In-Memory-Datenbank mit einer dauerhaften Speicherfunktion, um eine Web-Scale-Architektur zu entwickeln, die bis zu 1,5PB Daten zusammen mit dem erforderlichen Transaktionsvolumen verarbeiten kann. Diese Lösung dient als Aufzeichnungssystem und befindet sich nicht auf einem vorhandenen Datenspeicher.

In-Memory-Computing-Plattformen

Unternehmen, die eine langfristige Strategie entwickeln, bei der vorhandene Anwendungen beschleunigt und neue eingeführt werden, entscheiden sich möglicherweise für eine In-Memory-Computing-Plattform, die die Skalierbarkeit einer IMDG mit den vollständigen relationalen Datenbankfunktionen einer IMDB kombiniert. Die In-Memory-Computing-Plattform kann daher verwendet werden, um vorhandene Anwendungen zu beschleunigen, oder als Grundlage für die Erstellung neuer oder neu entwickelter Anwendungen dienen, die verteiltes Computing und einen dauerhaften Speicher nutzen können.

Neben der Entscheidung, welche Technologie ihren Anforderungen am besten entspricht, sollten Unternehmen prüfen, ob sie zusätzliche unterstützende In-Memory-Technologien benötigen, z.

  • Eine Streaming-Analyse-Engine zur Verwaltung der Komplexität rund um Datenfluss und Ereignisverarbeitung.
  • Ein Deep-Learning-basiertes Framework für kontinuierliches Lernen, das als Baustein für das dient, was Gartner als In-Process-HTAP (hybride Transaktions- / Analyseverarbeitung) bezeichnet. das heißt, die Fähigkeit, maschinelles Lernen oder Deep-Learning-Analyse in Echtzeit auf Betriebsdaten anzuwenden.

Die In-Memory-Computing-Technologie wird heute von führenden digitalen Unternehmen eingesetzt und wird in Zukunft noch weiter verbreitet sein. Je früher Sie ein solides Verständnis für die Bereitstellungsstrategien und -fähigkeiten des In-Memory-Computing entwickeln, desto eher können Sie Ihrem Unternehmen helfen, den Wettbewerbsvorteil zu erzielen, den es benötigt.