Facebook database [Updated] – A thorough insight into the databases used @Facebook
This write-up is a comprehensive insight into the persistence layer of Facebook and the first of the distributed systems write-ups on this blog. It takes a deep dive into questions like what database does Facebook use? Is it a NoSQL or a SQL DB? Is it…
What is a Cloud Architect? – A Thorough Insight & Why Should You Become One?
Hello there, how is it going?Welcome to scaleyourapp.com This write-up is a comprehensive insight into the frequently asked question What is a Cloud Architect? It also covers the related questions such as I am already a software architect, why do I care about the cloud? What…
What is cAdvisor? How Does it Work? Explained…
Hello there!! How is it going? Welcome to scaleyourapp.com This article is a comprehensive write-up on cAdvisor – an open source tool for running performance analysis & collecting usage data from the containers. This write-up will answer all our queries about it in-depth such as…
What is Grafana? Why Use It? Everything You Should Know About It
This article is an in-depth write-up on Grafana – An open-source tool for running analytics & monitoring our systems online. It contains answers to all our questions about it such as What is it? Why use it? Can I deploy it on-prem? Are there any…
How Long Does It Take to Learn JavaScript & Get A Freakin Job?
Hello there, how is it going?Welcome to scaleyourapp.com This write-up is a comprehensive insight into how long does it take to learn JavaScript? It also answers all the frequently asked questions about the programming language such as Is it worth learning JavaScript? What can I…
Distributed Systems and Scalability Feed
Facebook photo storage architecture
Facebook built Haystack, an object storage system designed for storing photos on a large scale. The platform stores over 260 billion images which amounts to over 20 petabytes of data. One billion new photos are uploaded each week which is approx—60 terabytes of data. At peak, the platform serves over one million images per second.
In the original NAS-based photo storage architecture, Facebook faced throughput and latency issues as the photos and the associated metadata lookups in NAS caused excessive disk operations almost upto ten just for retrieving a single image.

Tail latency in distributed systems
Tail latency is that tiny percentage of responses from a system that are the slowest in comparison to most of the responses. They are often called as the 98th or 99th percentile response times. This may seem insignificant at first but for large applications like LinkedIn, this has noticeable effects. This could mean that for a page having a million views per day 10,000 of those page views would experience the delay. Read how LinkedIn deals with longtail network latencies.
There can be multiple causes of tail latency: increasing load on the system, complex and distributed systems, application bottlenecks, slow network, slow disk access and more. Read more on it.
RobinHood: Tail latency-aware caching
RobinHood is a research caching system for application servers in large distributed systems having diverse backends. The cache system dynamically partitions the cache space between different backend services and continuously optimizes the partition sizes.
Microsoft research has a talk on getting rid of long-tail latencies.
Zero to Software Architect Learning Track - Starting from Zero to Designing Web-Scale Distributed Applications Like a Pro. Check it out.
Master system design for your interviews. Check out this blog post written by me.
Looking for developer, software architect jobs? Try Jooble. Jooble is a job search engine created for a single purpose: To help you find the job of your dreams!!
Zero to Software Architect Learning Track - Starting from Zero to Designing Web-Scale Distributed Applications Like a Pro. Check it out.
Recent Posts
- How Actor model/Actors run in clusters facilitating asynchronous communication in distributed systems
- Understanding the Actor model to build non-blocking, high-throughput distributed systems
- Technical Consultant: How can I become one? Explained with an example
- IT consultant: How do I become one? Explained with a real-world use case
- Software architecture course – From zero to mastering the fundamentals
Follow On Social Media