Migration from MySQL to NoSQL

Hi All,

We are working on a rails application using MySQL. It has become
inevitable for us to use NoSQL DB for one of our models. Please note
that performance is not yet the reason for us to move to NoSQL. I have
the following questions:
1. Should we move all the models from MySQL to NoSQL; or have both
MySQL and NoSQL and use NoSQL for those models which need.
2. If it is chosen to have both DBs, won't association be a problem
between model using different DBs?
3. If it is chosen to have only NoSQL DB, I am wondering if the gems
we use also work with the new DB we choose. The gems that concern me
the most are devise, cancan and will_paginate. I read that all these
have work arounds to make them work with MongoDB. Just wanted to know
if anyone has a successful outcome.
4. Which one is preferred? MongoDB, CouchDB, Redis or anything else? I
understand that the choice depends on the requirement. Consider our
application to be a social application, some thing like facebook.

Thanks in advance.

Best Regards,
Satyaram BV

Hi All,

We are working on a rails application using MySQL. It has become
inevitable for us to use NoSQL DB for one of our models. Please note
that performance is not yet the reason for us to move to NoSQL. I have
the following questions:
1. Should we move all the models from MySQL to NoSQL; or have both
MySQL and NoSQL and use NoSQL for those models which need.
2. If it is chosen to have both DBs, won't association be a problem
between model using different DBs?
3. If it is chosen to have only NoSQL DB, I am wondering if the gems
we use also work with the new DB we choose. The gems that concern me
the most are devise, cancan and will_paginate. I read that all these
have work arounds to make them work with MongoDB. Just wanted to know
if anyone has a successful outcome.
4. Which one is preferred? MongoDB, CouchDB, Redis or anything else? I
understand that the choice depends on the requirement. Consider our
application to be a social application, some thing like facebook.

All of these really do depend to a degree on which one you pick, which
depends on your use case. You're going to need to think a bit further
than 'like Facebook'.
They all make tradeoffs, and only you can tell which ones work or you.
For example do you want mongodb's document oriented storage, is redis'
store everything in ram and possibly lose the last few seconds ok,
does cassandra's eventual consistency model work for you?

Fred