Ja, det finns två alternativ till Redis som inte är begränsade av RAM-storleken samtidigt som de förblir kompatibla med Redis-protokollet:
Ardb (C++), replikering (Master-Slave/Master-Master):https://github.com/yinqiwen/ardb
En redis-protokollkompatibel beständig lagringsserver, stöder LevelDB/KyotoCabinet/LMDB som lagringsmotor.
Edis (Erlang):https://github.com/cbd/edis
Edis är en protokollkompatibel serverersättning för Redis, skriven inErlang. Edis mål är att vara en drop-in ersättare för Redis när uthållighet är viktigare än att hålla datasetet i minnet. Edis (för närvarande) använder Googles leveldb som en backend.
Och för fullständighetens skull är här en annan datastrukturdatabas:
Hyperdex (strängar, heltal, flytande, listor, uppsättningar, kartor):http://hyperdex.org/doc/latest/DataTypes/#chap:data-types
HyperDex är:
- Snabb:HyperDex har lägre latens, högre genomströmning och lägre varians än andra nyckel-värde-lager.
- Skalbar:HyperDex skalas allt eftersom fler maskiner läggs till i systemet.
- Konsekvent:HyperDex garanterar linjärisering för nyckelbaserade operationer. En läsning returnerar alltså alltid det senaste värdet som infogats i systemet. Inte bara "så småningom", utan omedelbart och alltid.
- Feltålig:HyperDex replikerar automatiskt data på flera maskiner så att samtidiga fel, upp till en applikationsbestämd gräns, inte kommer att orsaka dataförlust. Sökbar:
- HyperDex möjliggör effektiva uppslagningar av sekundära dataattribut.
- Lätt att använda:HyperDex tillhandahåller API:er för en mängd olika skript- och modersmål.
- Självunderhåll:En HyperDex är självunderhållande och kräver lite användarunderhåll.