Suche key/value-Datenbank



  • Ich suche eine Datenbank, die zu eindeutigen Schlüsseln jeweils einen binären Blob speichern kann.
    Ich habe keinen Überblick, was da derzeit bewährt ist, bisher habe ich SQLite oder Eigenbaulösungen verwendet.
    SQLite ist aber wahrscheinlich für solche Datenmengen nicht geschaffen und für eine eigene Lösung fehlt die Zeit.

    Folgende Randdaten:
    * Anwendung ist in C++ geschrieben. Ob der Zugriff direkt im Programm wie bei SQLite oder über einen Datenbankserver geschieht, ist im Prinzip egal.
    * Datenbank enthält ca. 100 Millionen Werte mit einer Größe zwischen 1-10 KB.
    * Ungefähr 1 Mio. updates/inserts pro Tag.
    * Der tatsächliche Platzbedarf auf der Platte sollte die Größe der Nutzdaten nicht wesentlich übersteigen. Dies soll sich auch nicht (etwa durch Fragmentation) über Zeit ändern.

    Was käme da am ehesten in Frage?



  • Berkeley DB sollte das abkönnen. Mit der habe ich schon millionen Datensätze mit Gnucobol problemlos verarbeiten können. Entspricht dort in etwa VSAM von IBM.
    VBISAM sollte das auch können.



  • Couchbase sollte das können. Nennt sich selbst "the world's most powerful NoSQL database".



  • habe mit LMDB gute Erfahrungen gemacht, wenn es um reine Key-Value-Pairs geht.
    Anwendungsfall war bei mir ähnlich, Anzahl der Datensätze war groß, die Größe der abgespeicherten Binärdaten dagegen klein (~10kb).
    Gibt auch eine C++ API.