Eigenständige Datenbank ohne SQL in Java

Ich suche einen Datenbankclient in Java. Diese Eigenschaften muss es haben

Eigenständig : Dies bedeutet, dass die Datenbank von einer JAR-Datei ausgeführt wird. Es sind keine zusätzlichen Ressourcen erforderlich. Ich muss mich nicht mit einem Datenbank-Client verbinden, der bereits als Dienst auf meinem PC läuft. Möglicherweise muss ich einen Dateinamen oder ein Verzeichnis angeben, um Daten zu speichern oder daraus abzurufen.

NoSQL : Ich möchte in der Lage sein, Objekte direkt darin zu speichern, nach dem Wert eines beliebigen Felds meines Objekts zu suchen, Datensätze zu aktualisieren und zu löschen. SQL-ähnliche Abfrageunterstützung ist nicht erforderlich. Es spielt keine Rolle, ob es dafür Unterstützung gibt oder nicht.

LocalDB : Ich suche etwas Ähnliches in Java.

Weiß jemand, ob es einen solchen Datenbankdienst für Java gibt?

Zum Speichern von Java-Objekten interessieren Sie sich möglicherweise mehr für "Objektdatenbanken" als für "NoSQL-Datenbanken".

Antworten (1)

Eigenständige

Was ich gesucht habe, heißt Embedded Database . Laut Wikipedia :

Ein eingebettetes Datenbanksystem ist ein Datenbankverwaltungssystem (DBMS), das eng in eine Anwendungssoftware integriert ist, die Zugriff auf gespeicherte Daten benötigt, sodass das Datenbanksystem vor dem Endbenutzer der Anwendung „versteckt“ ist und wenig oder keine laufende Wartung erfordert.

Eine gute Definition habe ich auch hier gefunden :

Es gibt zwei Definitionen von eingebetteten Datenbanken, die ich gesehen habe:

  1. Eingebettete Datenbank wie in einem Datenbanksystem, das speziell für den „eingebetteten“ Bereich (mobile Geräte usw.) entwickelt wurde. Dies bedeutet, dass sie in engen Umgebungen (in Bezug auf Speicher/CPU) eine angemessene Leistung erbringen.
  2. Eingebettete Datenbank wie in Datenbanken, die keinen Server benötigen und in eine Anwendung (wie SQLite) eingebettet sind. Dies bedeutet, dass alles von der Anwendung verwaltet wird.

Kein SQL

Der nächste Schritt besteht darin, eine gute eingebettete No-SQL-Datenbank in Java zu finden. Hier , hier und hier finden Sie eine ziemlich lange Liste eingebetteter Datenbanken.

Nach vielen Recherchen über Dokumentation, Zuverlässigkeit und Leistung verschiedener Datenbanken fand ich jetzt Berkeley DB als die beste.

Auch JetBrains Xodus sieht sehr vielversprechend aus.