Re:Scaling to 100M: MySQL Is a Better NoSQL
by Jweb_Guru on Wednesday May 25, 2016 @02:23AM
(#11767981)
> Querying a single table with an indexed key will be faster as a single lookup than doing a JOIN, let alone several.
Not always, particularly when you're returning multiple keys at once. Some comparisons with column stores would be instructive.
That said, use a system that's a good match for your data model(s)... if you're data can fit in a handful of collections, but may have varying object shapes/structure for semi-related data a document store may work better. Need massive scale, C* may be your best bet. There are use cases that are great fits for just about every database server that's been made. Some similar options may be a better fit, but it all depends.
Personally, I'm hoping to see in the box replication options for PostgreSQL in the next few releases, then it will probably be my go to option for most stuff. RethinkDB is pretty damned nice too, and you should be able to scale to many millions of users.
Once you hit certain scales, you usually have to implement a number of solutions... be they sharding, caching or queuing to deal with higher load. It depends on where your bottlenecks are.