Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm just thinking about how famous internet services like facebook or twitter manage fast growing databases.

Which could be a solution for this kind of problem?

What about ids ? I read there is a limit in MySQL - 18446744073709551615 - in unsigned bigint... how would you generate and manage a bigger value ?

Just a theoric problem, but i'm curious about a possible solution.

Thank you!

share|improve this question

In order to manage a social network with over 350 million users you need a custom setup. Customized and highly tuned databases, severs, tables, query caching, etc.

You can't do it with an out of the box MySQL installation. Every single aspect of the database needs to be customized and tailored to the exactly.

share|improve this answer
of course, but since actually there are those infrascrutures, i was just thinking about what they did to make them work – Dario Jun 10 '10 at 16:16
@Dario The customization is website specific... like Facebook is going to have a special way of dealing with people names versus group names as well as status updates. The information only available upon viewing someones profile is probably the only thing anywhere close to out of the box. Twitter has completely different needs. They both have a large staff of people all working full time just to manage and maintain their database. – Jarvin Jun 10 '10 at 17:55

Here is an interview with VP of Engineering Mike Schroepfer from facebook where he address questions around scaling.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .