It sounds like Sinatra is your best bet.
Some of the concepts you've described are not, traditionally, out-of-the-box so to speak for a Rails application - and configuring multiple NoSQL databases with datamapper will give you some headaches.
With Sinatra, you get the best of both worlds. It's a domain specific language, not a framework - so you can customize it exactly the way you need it. Whilst it will take some work to setup, having complete control over the framework your application uses is very satisfying. Build it from the ground up.
- Rails or Sinatra?
- Datamapper for Sinatra (can be easily adapted to use NoSQL)
- Check out an example MVC I built with Sinatra
Don't get me wrong, I love Rails, but the moment I have to start playing around with it's internals, you're better off just building it yourself with Sinatra.