News for hackers. Stuff that matters.
Re:Migrating Facebook to MySQL 8.0 by pbreit on Friday July 23, 2021 @12:27AM (#27927202)
Any idea what Facebooks stores in MySQL? Core user database?
Re:Migrating Facebook to MySQL 8.0 by kevinventullo on Friday July 23, 2021 @02:39AM (#27927864)
To a first approximation, everything.

Most product engineers interact with it by querying TAO, which you can read about in various blog posts, but is basically a cache in front of MySQL (this is a vast oversimplification).

Re:Migrating Facebook to MySQL 8.0 by notacoward on Friday July 23, 2021 @02:59PM (#27934369)
Hi, Kevin. :) As of the time I left, the bulk storage system I worked on - images, video, machine-learning datasets, backups of other things, etc. - held most of the bytes at Facebook. The MySQL/TAO complex had orders of magnitude more addressable objects, undoubtedly handled many times more requests and bytes in flight per second, but when it comes to bytes at rest they're not even number one.
Re:Migrating Facebook to MySQL 8.0 by kevinventullo on Friday July 23, 2021 @08:14PM (#27937226)
Fair enough :)
Re:Migrating Facebook to MySQL 8.0 by notacoward on Friday July 23, 2021 @03:07PM (#27934437)
Basically all the small stuff. Every user's identity, preferences, history, and connections. If you post text, that's there too. If you post media, that's somewhere else. Connections are the hard part, because it's a gigantic graph with the potential to make every query - e.g. to construct a user's timeline - hit vast numbers of servers. There's all sorts of special sauce to do with partitioning, caching, etc. to absorb as much as possible of that load before it hits the MySQL servers, but it's still a gigantic service even by Facebook standards.