Wir haben SQLite für RDBMS, aber gibt es irgendwelche disk-basierten Schlüsselspeicher-Datenbanken? Mit anderen Worten, ein Schlüsselwertspeicher, der auf einer kleinen Speichermenge mit einer größeren Datenmenge ausgeführt werden kann. Ich möchte es auf leistungsschwächeren Maschinen mit wenig freiem Speicher verwenden.
Es scheint, dass BerkeleyDB und LevelDB sind beide Optionen.
Es scheint, als ob Sie nach einem datenträgerbasierten Schlüsselwertspeicher suchen, der auch dann performant ist, wenn die Daten nicht in den Speicher passen.
Wie @Ofer Zelig erwähnt, ist schnell relativ. Aber ich denke, es ist hilfreich, sowohl die Leistungsbenchmarks als auch die Betriebsleitfäden für eine bestimmte Datenbank zu betrachten. Viele, einschließlich Redis , geben an, dass Sie genügend Arbeitsspeicher bereitstellen müssen, damit alle Daten (oder alle Indizes) hineinpassen Erinnerung. Das kann für einige Anwendungen zu teuer sein.Ich schlage vor, sich die FoundationDB anzusehen. Seine standardmäßige Speicher-Engine , "ssd", wurde für große Datenbanken entwickelt, die nicht verwendet werden nicht in Erinnerung. Die Leistungsbenchmarks verwenden alle einen großen Datensatz, der nicht in den Arbeitsspeicher passt, sodass Sie sehen können, ob dies der Fall ist schnell genug für dich.
Als Bonus ist FoundationDB als verteilter Cluster konzipiert und unterstützt mehrere Datenmodelle.
Vollständige Offenlegung: Ich bin ein Ingenieur bei FoundationDB.