Sunteți pe pagina 1din 15

Database used in Facebook

Presented By: Sneha Jaiswal (P11024)

Introduction
Social networking is the art of connecting with those who share common interests. Network is a community that helps keep us united with others and offers many benefits. Facebook is a social networking service launched in February 2004. Facebook has over one billion active users.

Facebook was founded by Mark Zuckerberg.

Working of Facebook
Facebook works from two ways:
Front-End Back-End

From the Front End side


Facebook uses a variety of services, tools, and programming languages to make up its core infrastructure.

At the front end, their servers run a LAMP

L Linux A Apache M MySQL P PHP


stack with Memcache.

Linux and Apache


Linux is a Unix-like computer operating system kernel. Its open source, very customizable, and good for security. Facebook runs the Linux operating system on Apache HTTP Servers. Apache is also free and is the most popular open source web server in use.

MySQL
For the database, Facebook utilizes MySQL because of its speed and reliability. It is used primarily as a key-value store as data is randomly distributed amongst a large set of logical instances. Data is distributed randomly.

PHP
Facebook uses PHP because it is a good web programming language. It has extensive support and an active developer community and it is good for rapid iteration. PHP is a dynamically typed/interpreted scripting language.

From the Back End side


Facebooks backend services are written in a variety of different programming languages including

C++ Java Python Erlang

Thrift (Protocol)
It is a lightweight remote procedure call framework for scalable cross-language services development. It supports C++, PHP, Python, Perl, Java, Ruby, Erlang, and others. Its quick, saves development time, and provides a division of labor of work on highperformance servers and applications.

Cassandra (Database)

It is a database management system designed to handle large amounts of data spread out across many servers. It powers Facebooks Inbox Search feature and provides a structured key-value store with eventual consistency.

Facebook also uses NoSQL


NoSQL is a database handling large amount of data which gave rise to concerns like database structure, scalability and availability of data.

NoSQL
Advantages
More powerful than traditional relational database. Data is scalable and flexible. There are new data models to consider. Writing database is very fast.

Disadvantages
No common standards Querying data does not involve familiar SQL model to find records. NoSQL databases are relatively immature and consistently evolving. No guarantee that all of the data will be successfully written.

Conclusion
Facebook really believes in very basic concept i.e keeping people connected. Facebook realizes the power of social networking and is constantly innovating to keep their service the best in the business. Apart from being into social networking, it is also famous for maintaining its database. There are millions of users in Facebook and maintaining their data is commendable.

THANK YOU

S-ar putea să vă placă și