Migration from relational
I hope someone can help since I'm getting lost.
A bit of background might help:
We're building a new release of our software and are looking into NoSQL, given our background with SQL Server for years.
We use a Master-Model approach where our Model is our standard database with some base data and all the various data structure (tables, views, sps, FK, etc) , which is 'copied' for each new client (biz-2-biz environment, used by the business' customers). Simple set-up with two SQL replicated instances.
We're used to having a seperate database for each customer, about 60 now. We want to be able to scale faster with the new version without the hurting. We want to grow to 200 easy.
I need to make sure that no data of one customer, ever comes up when another customer works on these data (through our software). So when I read about buckets, that looked good but I can only add 10. OK, views then, maybe that can seperate my data; also limited. Maybe more instances like Raven does; only 1 instance.
I'm kind of new to NoSQL so maybe I'm making things too difficult or I'm missing some information, but I hope someone can help me understand how I would set that up in CouchBase (which performs amazing btw in our simple insert / read test!).
Shared Buckets vs Separate buckets
Many buckets vs Few Buckets.
BEST - Few Buckets and Separate Buckets.
Many times its related to design , then budget. If budget was not a factor. Each user would get its own cluster and only have 1-3 buckets.
1. Users are safe in his own environment and doesn't effect other users.
2. Metrics are related to that users patterns only.
WORSE - Shared Buckets and Many Buckets.
I call this situation "Rent-A-Ferrari". In this case you have lots of users with a small data set (100MB to 20GB), but they want the reliability of Couchbase. You can give users an account number like EX. 0001 to 9999. So when you insert them into a bucket just add their account number like this Ex 0789_their-key. Its best to hash their key too Ex. 0789_ + Sha-1('their-key'). This way keys are always the same size.
1. Users can get up and running with Couchbase very fast.
To convert your data from RDBMS to NoSQL look into TalenD. http://blog.couchbase.com/mysql-couchbase-using-talend-etl