SQL can actually scale if you use the CQRS architecture which consists of two SQL instances. The first instance is an append only SQL instance. That is you are doing nothing but inserts into a table. You then use database replication to create a second read only instance. You use the second instance for reports, long running transactions, and other queries that take massive locks.
You could use NOSQL for the first instance but then you have to write your own integration sync.
Any real-world business semantic model is going to have LOTS of joins. The game is to make them more efficient. But first and always, remember that it doesn't matter how fast you get the wrong answer.
You could use NOSQL for the first instance but then you have to write your own integration sync.
reply