Eingebettete SQL-Datenbanken in Java

Man könnte nun befürchten, dass das Einbetten einer eigenen SQL-Datenbank die Größe der Anwendung erheblich erhöht. Dies ist aber nicht der Fall. Die HSQLDB-Jar-Datei ist nur ca. 600 KByte groß – komplett mit einer umfangreichen Sammlung von Tools wie Database Managers –, was in den meisten Fällen mehr als akzeptabel sein sollte. Apache Derby ist ungefähr 2 MByte groß, ohne die Lokalisierungs-Jars und den Netzwerktreiber, die man je nach Bedarf ergänzen kann.

Es bleibt also die Frage, welche der Datenbanken man verwenden soll. Gegen HSQLDB spricht vor allem, dass es nicht ACID-konform ist, aber was in dieser Hinsicht fehlt, holt man in Sachen Performance wieder heraus. Es gibt viele Anwendungen, die gut ohne ACID auskommen, zum Beispiel indem sie strikt nur einen Thread verwenden.

Derby wiederum ist ACID-konform und insgesamt die leistungsfähigere Datenbank, mit vielen Funktionen. Die ACID-Fähigkeiten gehen allerdings zu Lasten der Performance. Die Benchmarktests von Jamie Lawrence (http://jamie.ideasasylum.com/notebook/index.php?id=4) vermitteln einen Eindruck von den Unterschieden zwischen Derby und HSQLDB, auch wenn sie nicht das letzte Wort sind.

Man kann es auch so halten, dass man sowohl HSQLDB als auch Derby parat hat und die Entscheidung, welches von beiden man verwendet, jeweils von Fall zu Fall trifft, wobei man an die Abstraktionsschicht denken sollte, damit der Wechsel der Datenbank einfach ist.

Themenseiten: Anwendungsentwicklung, Big Data, Datenbank, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Eingebettete SQL-Datenbanken in Java

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *