Ultraschnelle Java In-Memory Datenbank-Anwendungen & Microservices mit MicroStream

von Christian Kümmel, Markus Kett | 30. Juni 2021

database, java

MicroStream ist ein fundamental neues Persistenz-Framework für die native Speicherung komplexer Java Objektgraphen. D.h., Objekte werden damit genau so persistent gespeichert, wie diese im Hauptspeicher von der JVM verwaltet werden. Umgekehrt lassen sich zu jeder Zeit einzelne Subgraphen in den RAM laden und der Objektgraph im Hauptspeicher wird automatisch aktualisiert.

Dadurch ergeben sich völlig neue Möglichkeiten: Objektgraphen lassen sich als In-Memory Datenbank verwenden. Ein Objektgraph ist dabei eine sehr mächtige Multi-Model Datenstruktur. Es lassen sich beliebige Java-Typen, Collections sowie Formate wie JSON verwenden und beliebig kombinieren. Passend dazu bietet Java die perfekte Abfragesprache. Mit Java Streams dauert das Durchsuchen selbst sehr großer und komplexer Objektgraphen nur Mikrosekunden - bis zu 1000 Mal schneller als vergleichbare SQL-Abfragen und sogar sehr viel schneller als das direkte Lesen von Abfrageergebnissen aus einem lokalen Cache. DB-spezifische Datenstrukturen oder Formate werden damit bedeutungslos für Java. Keine teuren Mappings mehr. Keine Datentyp-Konvertierungen mehr. Keine DB-spezifischen Abfragesprachen. Nur noch ein Datenmodell: Java-Klassen (POJOs). Kein zusätzliches Caching-Framework mehr. Keine unkomfortablen Objektkopien mehr. Simple Architektur und typsicherer Abfrage-Code. Reine Core-Java Features anstatt DB-spezifische Konzepte. Das Endresultat ist eine ultraschnelle Java In-Memory Datenbankanwendung oder Microservice.

MicroStream wird bereits seit über 5 Jahren in Unternehmensanwendung produktiv eingesetzt. Jetzt wird MicroStream Open Source und Teil der populären Microservice Frameworks Helidon und Open Liberty.

Materialien:


Hinweis

Dieser Vortrag findet Online statt. Dazu haben wir ein Jitsi-Meeting aufgesetzt: https://meet.digitale-oberlausitz.eu/jug

Poster: Jürgen sitzt am Tisch und überlegt. Er spielt Memory und hat gerade eine aufgedeckte Memory-Karte mit dem Java-Duke darauf in der Hand. Auf dem Tisch sind die anderen Karten zugedeckt, bis auf eine offene Karte. Auf dieser ist ein Datenbank-Symbol zu sehen.

Christian beschäftigt sich seit über 10 Jahren mit Java und ist seit über 7 Jahren Java-Trainer. Als Projektleiter und Software-Architekt konzipiert und implementiert er seit 10 Jahren komplexe Software-Systeme für Kunden aus unterschiedlichsten Branchen. Als Scrum Master ist er maßgeblich an der Entwicklung der freien Eclipse Distribution und visuellen Java Entwicklungsumgebung RapidClipse.com sowie der Open Source Abfragesprache JPA-SQL beteiligt. Zudem ist Christian als Speaker bei zahlreichen Entwicklerkonferenzen bekannt.

Markus entwickelt seit 20 Jahren mit seinem Team Developer-Tools für Java und alle wichtigen Datenbanksysteme sowie Individualsoftware für Endkunden. Er ist Product Owner der freien Eclipse Distribution und visuellen Java Entwicklungsumgebung RapidClipse sowie der Open Source Abfragesprache JPA-SQL. Markus ist Gründer und CEO von MicroStream, Chefredakteur des kostenlosen Java Magazins JAVAPRO, Co-Organisator der Java Konferenz JCON, freier Autor für verschiedene Fachzeitschriften sowie Speaker bei zahlreichen Entwicklerkonferenzen, User Groups und Meetups.


Datum: 30. Juni 2021, 19:00 Uhr

Das Treffen findet Online statt. Siehe Beschreibung.

Die Veranstaltung wird durch die Java User Group Görlitz (im iJUG Verband) organisiert.
Die Java User Group Görlitz ist ein Projekt des Digitale Oberlausitz e.V.