Dichiarazione di non responsabilità:sono l'autore di Nest.
Puoi ottenere lo stesso risultato con entrambe le librerie e penso che il principale elemento di differenziazione tra questi strumenti sia la loro complessità interna. Mentre Nest ti aiuta solo a rappresentare la struttura con chiavi piatte, Redis::Namespace ha una tabella di traduzione per ogni comando ed è quindi più fragile e richiede molta CPU.
Dai un'occhiata al codice sorgente di entrambi gli strumenti per capire cosa intendo:
https://github.com/soveran/nest/blob/master/lib/nest.rb
https://github.com/resque/redis-namespace/blob/master/lib/redis/namespace.rb
Detto questo, la giusta soluzione al problema che hai descritto è avere istanze Redis separate per progetti diversi. Si consideri che il keyspace è solo un aspetto di cui tenere conto (che potrebbe anche essere risolto facilmente con i diversi DB forniti da Redis). Gli altri aspetti (strategia di persistenza, limiti di connessione e memoria, sfratti di chiavi, ecc.) sono generalmente ottimizzati in base alla natura del progetto.
Un altro fatto importante è che Redis è a thread singolo e molte applicazioni lo utilizzano, sei soggetto a condividere lo stesso core per tutte le richieste. Con questo in mente, avere diverse istanze Redis ti aiuta a parallelizzare il lavoro.