Let's say you are planning to create a website of the scale of Facebook (If I am going to cite a website's name then why not Facebook?!). Is it recommended to use SQL Server as your database for such applications?

I am asking this question because many colleagues of mine say that SQL server should not be used such applications. They prefer Oracle or MySQL instead.

  • 1
    Do they use SQL Server for any applications?
    – JeffO
    Commented Jan 22, 2011 at 14:43
  • 5
    I do not know if SQL server is the answer, but Oracle is no better than SQl Server.
    – Job
    Commented Jan 22, 2011 at 22:10
  • 10
    First ask yourself the question -- is your data relational??
    – Henrik
    Commented Feb 12, 2011 at 17:27
  • 2
    Is your budget massively scalable?
    – sasfrog
    Commented Apr 21, 2012 at 22:47

6 Answers 6


Yes, SQL Server has been designed for heavy usage including web. It has the ability to be put in lot of differents configuration such as memory instances coupled with a cpu instances and a SAN as storage.

Ask your local Microsoft integrator or evangelist for advices.

You can find many resources regarding scaling capabilities of SQL Server on the web, and as a starter here is a nice blog post from the SQL Server team on the subject: Link

Be sure to check how Azure provide SQL Server in the cloud.

  • SQL Azure is not just a 'SQL Server in the cloud', there are some differences. But it's certainly a viable option for a large scaled site and should be looked at.
    – Bart
    Commented Jul 12, 2011 at 12:02
  • 1
    If you have money to throw at it then it'll scale. Commented Jul 30, 2013 at 10:43

SQL Server is the match for any other database for this kind of work, but if you're thinking of doing something at that kind of scale you might be better working with a cloud table storage system rather than a conventional relational database in terms of scalability, or designing a heterogeneous system that uses table storage for the larger scale data management and a database for the places where you need the relational or transactional facilities those offer.

  • Yes, answer accepted. Voted up. ;)
    – Henrik
    Commented Feb 12, 2011 at 17:27

You shouldn't be using traditional database engines if you need genuine massively scalable capabilities.

Traditional SQL databases do scale pretty well (you'll find plenty of examples of big sites using MySQL, SQL Server or Orcale) but at a certain point you will hit the scalability limit. Exactly when this happens will depend on the level of demand, the complexity of your application requirements, how much you are willing to spend on expensive servers and how well you are able to optimise the database usage. Many sites will never hit this limit, but if you do then it's pretty painful and you will be faced with a big engineering challenge to fix the problem.

Beyond this point, you really need a fully distributed NoSQL database - e.g. something like Cassandra, which was in fact developed at Facebook to solve some of their big data challenges. NoSQL databases explicitly sacrifice some of the traditional SQL database capabilities (usually around transactions, locking and eventual consistency) in order to allow effectively unlimited horizontal scalability.

Overall my advice would be to figure out if you really need massive scalability, and choose your technology path accordingly.


Yes. I believe Microsoft Live.com is built on top of SQL Server.

Being a Linux/PostgreSQL fan let me say that you can create Facebook with any today's tech, specially SQL Server.

If you don't plan to have as many users as Facebook (500M), then this very most website (Stack Overflow network) is built on top of .Net and SQL Server.


As a tool you might be able to use SQL Server but remember site's like Facebook are not built on the top of a Database alone. They use various technologies to get the task done, check out the Yahoo videos to find how facebook manages Logs alone and you would realize that DB is only a part of the huge scalable Architecture. At about 10000 rows update per second I have seen both SQL Server and Oracle DB be very slow after a few days on good configuration machine's. My problem is that I could not use distributed computing. Hence it is important to look at the support systems that a DB or scalable Architecture can provide.


I can't answer for MySQL (!) but I di have experience supporting customers we choose whether to use SQLServer or Oracle. So far, we've found that generally there's no difference between them, but when things get to the edge, Oracle is by far the better product. For example, we are currently taking down our 24/7 mission critical system to purge a load of records as SQLServer decided it would take many hours to do this task while running (in a mirrored environment). We had issues with log shipping of a large dataset across a WAN link that was never quite resolved. Things like this always make us glad to support the customers who run on Oracle, where we never have such problems.

So, if you're looking for a massively scalable system, that's when you're likely to find these issues. Oracle is dull, difficult and annoying, but it really does work.

Not the answer you're looking for? Browse other questions tagged or ask your own question.