(11) Did Facebook develop a custom in-memory database to manage its News Feeds? - Quora
Most of this stuff is not secret. We presented the basics of the newsfeed backend at f8 a couple of years ago, and at a few other tech-talks.It's nothing complicated. Just an in-memory store of recent actions taken by each user on the site. These actions can be queried and merged into stories which can then be ranked and returned to the user.
The challenges were mainly in dealing with the huge load, as well as robustly handling various failure and timeout scenarios.
The basic architecture is similar to an in-memory search cluster. There are a bunch of leaf nodes that store user actions in RAM (on the heap), sharded by actor. The leaves support a variety of filtering primitives, so you can just have them return actions of a certain type, or with particular attributes. Then there are aggregation nodes that query the leaves, merge and rank the results, and return them to the client.
Read full article from (11) Did Facebook develop a custom in-memory database to manage its News Feeds? - Quora
No comments:
Post a Comment