Oracles Berkeley DB Java Edition 7 verpasst Daten ein Verfallsdatum

Die Java-Version der eingebette Datenbank schafft als Erste den Sprung auf Version 7.0. Dabei beschränkt sie sich auf eine wesentliche Neuerung: Time-to-live-Angaben legen die Lebenszeit von Datenbankeinträgen fest.

In Pocket speichern vorlesen Druckansicht
Oracles Berkeley DB Java Edition 7 bietet Daten mit Verfallsdatum
Lesezeit: 2 Min.
Von
  • Rainald Menge-Sonnentag

Ursprünglich entstand die Berkeley DB, wie der Name richtig vermuten lässt, an der UC Berkeley (University of California). Sie sollte die historischen Unix-Datenbankbibliotheken dbm, ndbm und hsearch ersetzen. Ihre Macher haben sie erstmals 1992 als Bestandteil von BSD veröffentlicht. Als Schlüssel-Wert-Speicher entspricht sie dem Konzept der NoSQL-Datenbanken, ohne als solche zu gelten, wie ein Blog-Beitrag auf der Oracle-Website erklärt. 1997 entstand die Firma Sleepycat zur kommerziellen Vermarktung der Datenbank; 2006 kaufte Oracle Sleepycat und damit die Berkeley DB.

Die Datenbank existiert in drei unterschiedlichen Versionen: Die in C geschriebene Berkeley DB hat Bindings für unterschiedliche Programmiersprachen wie C/C++, Java, C#, Perl und Python. Die in C++ entwickelte Berkeley DB XML ist auf die Speicherung von XML-Dokumenten ausgelegt und unterstützt XQuery. Die Berkeley DB Java Edition schließlich ist eine reine Java-Implementierung in einer einzelnen JAR-Datei, die dieselben Funktionen besitzt wie die in C geschriebenen Variante.

Die Berkeley DB Java Edition ist nun die erste, die den Versionssprung auf 7.0 macht. Die einzige wesentliche neue Funktion ist das Time-to-live-Feature (TTL). Datenbankeinträge haben einen TTL-Wert, der über die Methode setTTL()der Klasse WriteOptions ihre Lebenszeit festlegt. Passend dazu gibt es neue API-Aufrufe für put, get und delete. Das Setzen des Werts über die Collection-API ist derzeit nicht möglich, weil diese das standardmäßige Java-Collections-Interface verwendet, das keine entsprechende Funktion bietet.

Oracle bezeichnet im Blog-Beitrag zur Veröffentlichung der Berkeley DB Java Edition 7.0 die TTL-Funktion als typische IoT-Anforderung. So können Entwickler beispielsweise Sensorendaten nur so lange speichern, wie sie relevant für die jeweilige Anwendung sind.

Die Berkeley DB Java Edition ist quelloffen verfügbar, steht aber anders als die C-Variante nicht unter der GNU AGPL 3, sondern unter einer speziellen Oracle-Lizenz. Version 7 steht zum Herunterladen auf der Berkeley-DB-Download-Seite bereit. (rme)