There are many graph databases (one of NoSQL classifications) out there, but I heard read times (performance wise ) are really weak to use them as primary database, and are only good to be used in conjunction with some RDBMS.
Social network sites have a lot of relations. How can document-based database storing things in JSON can deal with complex graphs like that?
How can it outperform RDBMS which are made with “relations” in mind? I think even NoSQL graph databases can’t really outperform RDBMS when it comes to relationships.
The main and the only reason to use NoSQL is "scalability " and “flexibility” . Those are the main factors to consider them. Because they are designed to work with big data and scalability.
And because they’re schema-less but that’s partially true because schema is somewhat defined in application’s code.
Regarding flexibility and schema-less:
- When using RDBMS with some ORM like Entity Framework (C#) it’s not that painful to use. And gives you some nice migration capabilities when your models change.
For example facebook was built entirely on MySQL(first, and they still use it). What if it was built now when Couchbase is available, would it be a good use for them?
How can you convince me to use Couchbase as the main db for social networking site?