J'aime beaucoup CouchDB. Il faut un peu de temps pour apprendre, mais les vues sont vraiment puissantes une fois que vous avez compris comment les utiliser. Il existe un module appelé cradle sur github et npm avec lequel il est très facile de travailler. Je n'ai pas pu tester sa rapidité, mais il est vraiment flexible (vous pouvez accéder à vos données dans un navigateur également si vous le souhaitez).
La question principale ici est de savoir quelle conception de base de données est la plus appropriée pour votre application. Vos données sont-elles essentiellement de type clé-valeur ? Si c'est le cas, utilisez Redis. Avez-vous des données pour lesquelles tous les documents n'ont pas nécessairement les mêmes champs ? Dans ce cas, utilisez une base de données NoSQL comme CouchDB.
Le pire après l'utilisation d'une base de données bloquante est d'utiliser la mauvaise base de données pour vos données. CouchDB est géré par Apache, vous savez donc qu'il est de bonne qualité, mais cela n'a pas de sens de l'utiliser si vos données auraient plus de sens dans une table SQL ou un simple magasin clé-valeur.
Pensez à votre cas d'utilisation. Serez-vous plus enclin à effectuer une recherche en texte intégral, à obtenir des données par clé ou à obtenir des plages de documents ayant des attributs similaires ?