The high quotient of transparency leads to socialization, which got affirmed by the popularity of Facebook supporting social media networking through a single window. The members of Facebook upload millions of photos, videos and also paint its wall with their colourful thoughts. My first interface with it not started with a real desire to participate but motivated by the professional experimentation. The art of scaling a social site is really challengeable; they did it (Kudos to Facebook engineering team). Also, they have released their engineering tools as open source @ https://github.com/facebook.
The Facebook has to challenge with: (as per July 2010)
- 570 billion page views per month
- More than 3 billion photo uploads every month
- Number of photos exceed than all other photo sites combined (including sites like Flickr)
- Serving 1.2 million photos per second
- More than 25 billion pieces of content of status, updates, comments, etc., are shared every month
Facebook Engineering tools
Cassandra is a distributed storage system with no single point of failure. Internally it’s using Distributed Hash Table (DHT), which is elaborated in my earlier article. Cassandra is using Amazon Dynamo’s Infrastructure design and Google BigTable’s ColumnFamily-based data model.
We had a good time in experimenting with Cassandra implemented along with Apache Lucene, which now caters our scalable search engine. This architecture is now gradually getting its place in our various tools, which are using Apache Solr/Lucene.