Sim, existem duas alternativas ao Redis que não são limitadas pelo tamanho da RAM e permanecem compatíveis com o protocolo Redis:
Ardb (C++), replicação (Master-Slave/Master-Master):https://github.com/yinqiwen/ardb
Um servidor de armazenamento persistente compatível com protocolo redis, supportLevelDB/KyotoCabinet/LMDB como mecanismo de armazenamento.
Edis (Erlang):https://github.com/cbd/edis
Edis é um substituto de servidor compatível com protocolo para Redis, escrito em Erlang. O objetivo do Edis é ser um substituto imediato para o Redis quando a persistência for mais importante do que manter o conjunto de dados na memória. Edis (atualmente) usa leveldb do Google como backend.
E para completar, aqui está outro banco de dados de estruturas de dados:
Hyperdex (Strings, Integers, Floats, Lists, Sets, Maps):http://hyperdex.org/doc/latest/DataTypes/#chap:data-types
HyperDex é:
- Rápido:o HyperDex tem menor latência, maior taxa de transferência e menor variação do que outros armazenamentos de valores-chave.
- Escalável:o HyperDex é dimensionado à medida que mais máquinas são adicionadas ao sistema.
- Consistente:o HyperDex garante a linearização para operações baseadas em chaves. Assim, uma leitura sempre retorna o último valor inserido no sistema. Não apenas “eventualmente”, mas imediatamente e sempre.
- Tolerante a falhas:o HyperDex replica automaticamente os dados em várias máquinas para que falhas simultâneas, até um limite determinado pelo aplicativo, não causem perda de dados.Pesquisável:
- O HyperDex permite pesquisas eficientes de atributos de dados secundários.
- Fácil de usar:HyperDex fornece APIs para uma variedade de scripts e linguagens nativas.
- Automanutenção:um HyperDex é autossustentável e requer pouca manutenção do usuário.