0% found this document useful (0 votes)
98 views

Facebook Architecture

This document provides an overview of Facebook's scalable architecture. It discusses how Facebook uses a variety of technologies like Linux, Apache, PHP, MySQL, Memcached, HipHop (PHP compiler), Scribe (distributed logging framework), Thrift (cross-language framework), Hadoop and Hive to handle large amounts of user data and scale to support its massive user base. The architecture allows Facebook to distribute its load across thousands of servers for improved performance and availability.

Uploaded by

Saravanan V A
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
98 views

Facebook Architecture

This document provides an overview of Facebook's scalable architecture. It discusses how Facebook uses a variety of technologies like Linux, Apache, PHP, MySQL, Memcached, HipHop (PHP compiler), Scribe (distributed logging framework), Thrift (cross-language framework), Hadoop and Hive to handle large amounts of user data and scale to support its massive user base. The architecture allows Facebook to distribute its load across thousands of servers for improved performance and availability.

Uploaded by

Saravanan V A
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/262689075

Overview of Facebook scalable architecture

Conference Paper · May 2014


DOI: 10.1145/2618168.2618198

CITATION READS

1 6,079

5 authors, including:

Daniel Barrigas Melyssa Barata


University of Coimbra 8 PUBLICATIONS   16 CITATIONS   
2 PUBLICATIONS   5 CITATIONS   
SEE PROFILE
SEE PROFILE

Pedro Furtado Jorge Bernardino


University of Coimbra Instituto Politécnico de Coimbra
224 PUBLICATIONS   806 CITATIONS    184 PUBLICATIONS   696 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Medical Imaging and Machine learning View project

Networked Distributed Data Management View project

All content following this page was uploaded by Pedro Furtado on 30 May 2014.

The user has requested enhancement of the downloaded file.


Daniel  Barrigas,  Hugo  Barrigas,  Melyssa  Barata,  Pedro  Furtado  and  Jorge  Bernardino,   5/30/14  
"Overview  of  Facebook  Scalable  Architecture",  in  ACM  InternaJonal  Conference  on  
InformaJon  Systems  and  Design  of  CommunicaJon,  ISDOC’14,  May  16–17,  2014,  Lisboa,  
Portugal.  
ISDOC 2014
Lisboa, May 16-17, 2014 AGENDA
  Introduction

  How Facebook works


OVERVIEW OF FACEBOOK   Facebook’sArchitecture
SCALABLE ARCHITECTURE   Conclusions

Hugo Barrigas
Daniel Barrigas
Melyssa Barata
Pedro Furtado
Jorge Bernardino

INTRODUCTION HOW FACEBOOK WORKS


  Scalability is essential for web applications with   Facebook needs to handle large amounts of
massive numbers of users. information every second.
  The high growth rate of web based systems
  Facebook continues to be a LAMP (Linux-
having hundreds of thousands of users accessing Apache-Memcached-PHP) website, but had to
it continuously led to response time problems for
change and expand its operation to incorporate
users who are trying to receive information at the
same time. other elements and services.
  The current architecture of Facebook is very   Personalized and implemented systems also exist
large and consists of many technologies and inside Facebook, such as Haystack.
thousands of servers.
  In this presentation Facebook’s architecture and
how it handles scalability issues is going to be
described.

FRONT-END LINUX & APACHE


  Facebook uses a variety of services, tools, and   Linux is a kernel operating system.
programming languages to make up its core   It is open source, highly customizable and good
infrastructure. for safety.
  At the front-end, their servers run a LAMP   Facebook uses Linux with the Apache HTTP
(Linux, Apache, MySQL, and PHP) stack with server.
Memcache.
  Apache is also open source and is the most
popular web server.

1  
Daniel  Barrigas,  Hugo  Barrigas,  Melyssa  Barata,  Pedro  Furtado  and  Jorge  Bernardino,   5/30/14  
"Overview  of  Facebook  Scalable  Architecture",  in  ACM  InternaJonal  Conference  on  
InformaJon  Systems  and  Design  of  CommunicaJon,  ISDOC’14,  May  16–17,  2014,  Lisboa,  
Portugal.  

PHP & BIGPIPE PHP & BIGPIPE


  PHP
  fast iterations
  easy to use
  Simple to learn
  good web programming language with extensive
community support.
  BigPipeis a dynamic web page system developed
by Facebook.
  The general idea is to perform pipelining of sections
through the implementation of various stages within
web browsers and servers.

HIP-HOP BACK-END
  Developed by Facebook   At the heart of the application back end are the
  PHP compiler. application servers.
  Converts PHP scripts into optimized C++ code.   Application servers are responsible for answering
all queries and take all the writes into the
  Created to minimize server resources.
system.
  Some key features of HipHop are:
  They also interact with a number of services to
  Easy to implement extensions
achieve this.
  Reduces CPU and Memory usage significantly

MYSQL SCRIBE
  Fastand reliable   Scalable distributed logging framework
  Thousands of MySQL servers   Useful for logging a wide array of data
  Users randomly distributed across these servers   Simple data model
  Relational aspect of DB is not used   Built on top of Thrift
  No joins. Logically difficult(Data is distributed
randomly)
  Primarily key-value store

2  
Daniel  Barrigas,  Hugo  Barrigas,  Melyssa  Barata,  Pedro  Furtado  and  Jorge  Bernardino,   5/30/14  
"Overview  of  Facebook  Scalable  Architecture",  in  ACM  InternaJonal  Conference  on  
InformaJon  Systems  and  Design  of  CommunicaJon,  ISDOC’14,  May  16–17,  2014,  Lisboa,  
Portugal.  

SCRIBE THRIFT
  Lightweight software framework for cross-
language development
  Very quick

  Swaps information between various applications


developed in different languages.
  Thrift protocol offers serialization between
several languages.

MEMCACHED MEMCACHED
  Key-value memory storage system for arbitrary
pieces of information that result either from
database research or page rendering.
  System uses client-server architecture.

  Server maintains a key-value vector association

  Client populates this vector and performs


research on it.
  The server then stores these values in memory
  therefore decreases reading time.
  If
a server consumes the available memory, it
removes older values.

HADOOP & HIVE HADOOP & HIVE


  Hadoop is ideal for scalable systems with an
enormous need to store and process large
amounts of information.
  Scales horizontally.

  Instead of replacing existing storage systems,


Hadoop complements them.
  This process allows existing systems to serve
data in real time or provide transactional
interactive business intelligence.

3  
Daniel  Barrigas,  Hugo  Barrigas,  Melyssa  Barata,  Pedro  Furtado  and  Jorge  Bernardino,   5/30/14  
"Overview  of  Facebook  Scalable  Architecture",  in  ACM  InternaJonal  Conference  on  
InformaJon  Systems  and  Design  of  CommunicaJon,  ISDOC’14,  May  16–17,  2014,  Lisboa,  
Portugal.  

HAYSTACK HAYSTACK
  Efficientstorage of billions of photos.
  High performance.
  Highly scalable.

  Uses extensive caching in its main memory.

FACEBOOK’S ARCHITECTURE FACEBOOK’S ARCHITECTURE

OVERVIEW OF FACEBOOK SCALABLE


CONCLUSIONS ARCHITECTURE

  Facebook has gained a tremendous amount of


popularity in the last years and has become the
most successful social networking website ever
created.
  If we look past all of the features and
innovations, the main idea behind Facebook is
really very basic “keeping people connected”.
  Facebook realizes the power of social networking
and is constantly innovating to keep their service
the best in the business. Hugo Barrigas
Daniel Barrigas
Melyssa Barata
Pedro Furtado
Jorge Bernardino

4  

View publication stats

You might also like