Answer by Ben Baert:
Big websites usually use a variety of databases, because different databases serve different purposes.
You seem to misunderstand what NoSQL means. NoSQL stands for not only SQL and is the 'opposit'e of SQL. Within this categorisation, all databases fall in either SQL or NoSQL. That is, MySQL, MariaDB (open-source fork of MySQL) and PostgreSQL are SQL databases, MongoDB is an example of a NoSQL database.
As for the companies you've mentioned:
- Facebook uses mainly MySQL. In fact, someone seems to have made an attempt to revers engineer Facebook's database design:
- Twitter uses (their own version of) MySQL for tweets and users, and their own special kind of graph database, FlockDB, built on top of MySQL, for relations (followers, following,…), and their own version of Memcached (with speculation about whether Redis is used too or not).
- LinkedIn used/uses Oracle Database and Voldemort.
One last thing though. Simply because these big companies use these technologies, doesn't mean that you should. They have tons of engineers and resources, and very high demands, so they can both afford to use multiple databases (which requires specialised engineers) and need to use it (because of the extreme demand). As a small-scale developer, you probably don't need to worry about the extreme demands, nor do you have the means to use multiple databases.