Ja, es gibt zwei Alternativen zu Redis, die nicht durch die RAM-Größe begrenzt sind und dennoch mit dem Redis-Protokoll kompatibel bleiben:
Ardb (C++), Replikation (Master-Slave/Master-Master):https://github.com/yinqiwen/ardb
Ein Redis-Protokoll-kompatibler persistenter Speicherserver, der LevelDB/KyotoCabinet/LMDB als Speicher-Engine unterstützt.
Edis (Erlang):https://github.com/cbd/edis
Edis ist ein protokollkompatibler Server-Ersatz für Redis, geschrieben in Erlang. Das Ziel von Edis ist es, ein Drop-in-Ersatz für Redis zu sein, wenn Persistenz wichtiger ist als das Halten des Datensatzes im Speicher. Edis verwendet (derzeit) Googles leveldb als Backend.
Und der Vollständigkeit halber hier eine weitere Datenstruktur-Datenbank:
Hyperdex (Strings, Integers, Floats, Lists, Sets, Maps):http://hyperdex.org/doc/latest/DataTypes/#chap:data-types
HyperDex ist:
- Schnell:HyperDex hat eine geringere Latenz, einen höheren Durchsatz und eine geringere Varianz als andere Schlüsselwertspeicher.
- Skalierbar:HyperDex skaliert, wenn weitere Maschinen zum System hinzugefügt werden.
- Konsequent:HyperDex garantiert Linearisierbarkeit für schlüsselbasierte Operationen. Somit gibt ein Lesevorgang immer den zuletzt in das System eingefügten Wert zurück. Nicht nur „irgendwann“, sondern sofort und immer.
- Fehlertolerant:HyperDex repliziert Daten automatisch auf mehreren Computern, sodass gleichzeitige Ausfälle bis zu einer von der Anwendung festgelegten Grenze keinen Datenverlust verursachen. Durchsuchbar:
- HyperDex ermöglicht eine effiziente Suche nach sekundären Datenattributen.
- Benutzerfreundlich:HyperDex bietet APIs für eine Vielzahl von Skript- und Muttersprachen.
- Selbstwartung:Ein HyperDex ist selbstwartungsfähig und erfordert wenig Benutzerwartung.