0% completed
Designing Facebook’s Newsfeed
1. What is Facebook’s newsfeed?
A Newsfeed is the constantly updating list of stories in the middle of Facebook’s homepage. It includes status updates, photos, videos, links, app activity, and 'likes' from people, pages, and groups that a user follows on Facebook. In other words, it is a compilation of a complete scrollable version of your friends' and your life story from photos, videos, locations, status updates, and other activities.
.....
.....
.....
poojanihalani19
· 3 years ago
Affinity is your relationship with users. It means that the amount a user has interacted with your Page in the past affects how likely they are to see your posts. So if they’ve clicked your links, liked or commented on your posts in the past, EdgeRank assumes they’re pretty keen to see more of your stuff, and gives it higher priority in that user’s News Feed.
Recently Facebook released an update to the News Feed algorithm called Last Actor. This update takes note of the last 50 interactions you’ve had on Facebook and gives content from those same users or Pages more prevalence in your feed. So if a user interacts with your Page in the morning, your content that afternoon or the next day will be more likely to show up in their feed (assuming they haven’t had another 50 interactions a
Prabhakar
· 4 years ago
In section 5, are the tables an RDBMS schema representation? If so, how would this scale given the number of users/entities and the UserFollow table may explode in size with 1B (users) x 1B (entities)
- Assuming we have 1B users that can also be entities
Similarly FeedMedia table size can also be too large for an RDBMS DB.
- How would these be modeled in NoSQL and what DBs would be used?
- Can we use Cassandra for tracking both UserFollow (User as Key and all followed as column values), UserFeed (User as Key and Feeds as column values)? How would we store FeedMedia in this case?
Vladimir
· 4 years ago
In section 4 "System APIs", can we use "used_id" instead of "api_dev_key"? What disadvantages of using "user_id" for throttling?