Original-URL des Artikels: https://www.golem.de/1107/85298.html    Veröffentlicht: 28.07.2011 09:04    Kurz-URL: https://glm.io/85298

LevelDB

Google veröffentlicht schnellen Key-Value als Open Source

Mit LevelDB hat Google eine schnelle Storage-Engine für Key-Value-Paare unter einer BSD-Lizenz als Open Source veröffentlicht. In Google Benchmarks ist LevelDB deutlich schneller als SQLite und Kyoto Cabinet.

LevelDB kommt als C++-Bibliothek daher und lässt sich in bestehende Applikationen einbetten. Google will LevelDB beispielsweise in kommenden Versionen seines Browsers Chrome einsetzen, wo LevelDB auch für eine Implementierung des HTML5-APIs IndexedDB genutzt werden soll. Zudem lassen sich mit LevelDB beispielsweise Nutzereinstellungen speichern oder der Browsercache verwalten.

Google hat LevelDB nach eigener Aussage so gestaltet, dass die Storage-Engine sich leicht als Baustein in abstraktere Speichersysteme einbinden lässt und setzt seinerseits LevelDB auch in seiner Datenbank Bigtable ein.

Dabei soll LevelDB nur wenige Abhängigkeiten aufweisen und sich leicht auf andere Plattformen portieren lassen. Derzeit werden Unix-ähnliche Systeme, Mac OS X, Windows und Android unterstützt.

In von Google veröffentlichten Benchmarks ist LevelDB in vielen Situationen deutlich schneller als beispielsweise SQLite und Kyoto Cabinet. Kommt SQLite beispielsweise beim sequenziellen Lesen auf 186.000 Operationen pro Sekunde, sind es bei Kyoto 1,01 Millionen und bei LevelDB 4,03 Millionen. Noch größer sind die Unterschiede beim sequenziellen Schreiben. Lediglich bei zufälligen Lesezugriffen ist SQLite minimal schneller als LevelDB, liegt dabei aber knapp hinter Kyoto. Dafür fällt der Unterschied bei zufälligen Schreibzugriffen extrem aus: SQLite kommt auf 420 Operationen pro Sekunde, LevelDB auf 164.000. Allerdings verschieben sich die Relationen beispielsweise, wenn es um das Schreiben großer Datenmengen geht: Hier ist SQLite deutlich schneller.

LevelDB ist besonderes auf Batch-Updates optimiert, also das gleichzeitige Ändern einer großen Zahl von Einträgen. Bei zufälligen Operationen ist LevelDB in Googles Benchmark rund 220-mal schneller als SQLite.

LevelDB steht unter einer BSD-Lizenz, der Code ist unter code.google.com/p/leveldb verfügbar.  (ji)


Verwandte Artikel:
SQLite: Version 3.7.0 mit Write-Ahead-Logging   
(23.07.2010, https://glm.io/76708 )
Oracles Berkeley DB spricht jetzt SQLite   
(25.03.2010, https://glm.io/74077 )
Symbian erhält SQL-Datenbank- und Navigationsfunktionen   
(01.04.2008, https://glm.io/58706 )
Adobe unterstützt SQLite   
(26.02.2008, https://glm.io/57954 )

© 1997–2019 Golem.de, https://www.golem.de/