Wednesday, August 12, 2020

TAO — Facebook’s Distributed database for Social Graph

 Here is the article. 

I think that the article is very helpful for me to understand tech talk TAO. Compared to reading the paper, it is better for me to read the writing from the author. 

It is my disadvantage since I do not put my hands on large distributed system and I need to rely on different resources to help me to advance my interest. 

The content is from the article. Well-written, nice reading time. 

I will be covering the architecture and key design principles outlined in the paper that came out of Facebook on graph databases. This is an attempt to summarize the architecture of a highly scalable graph database that can support objects and their associations, for a read heavy workload consisting of billions of transactions per second. In facebook’s case, reads comprise of more than 99% of the requests and write are less than a percent.

Background

Facebook has billions of users and most of these users consume content more often than they create content. So obviously their workload is read heavy. So they initially implemented a distributed lookaside cache using memcached, which this paper references a lot. In this workload, a lookaside cache is used to support all the reads and writes will go to the database. A good cache-hit rate ensures a good performance and doesn’t overload the database. The following figure shows how a memcache based lookaside cache is used at facebook for optimizing reads.




No comments:

Post a Comment