Dê uma olhada no projeto voldemort. É um armazenamento de valor-chave distribuído criado pelo Linked-In e suporta a capacidade de ser incorporado.
No guia de início rápido há um pequeno exemplo de execução do servidor incorporado versus autônomo.
VoldemortConfig config = VoldemortConfig.loadFromEnvironmentVariable();
VoldemortServer server = new VoldemortServer(config);
server.start();
Eu não sei muito sobre o Redis, então não posso compará-los entre os recursos. No projeto que usamos Voldemort, usamos sua backing store readonly com ótimos resultados. Isso nos permitiu "pré-compilar" um banco de dados diário em nosso data center de processamento e "enviá-lo" para data centers de ponta. Dessa forma, cada data center de borda tinha uma cópia local de seu conjunto de dados.
EDIT:Depois de reler sua pergunta, eu queria adicionar a Tabela de Gauva - Esta Tabela DataStructure também pode ser algo que você está procurando e é semelhante ao que você obtém com muitos bancos de dados não-sql.