addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscontroller-playcrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1light-bulblinklocation-pinm-swarmSearchmailmessagesminusmoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonprintShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruserwarningyahoo

How FriendFeed uses MySQL to store schema-less data

Bret Taylor from FriendFeed talks about how they store their data in a "schema-less" system on top of MySQL. FriendFeed stores over 250 million entries and a bunch of other data, from comments and "likes" to friend lists.

As the database has grown, they have tried to iteratively deal with the scaling issues that come with rapid growth. They did the typical things, like using read slaves and memcache to increase read throughput and sharding our database to improve write throughput. However, as FriendFeed grew, scaling their existing features to accommodate more traffic turned out to be much less of an issue than adding new features.

In particular, making schema changes or adding indexes to a database with more than 10 - 20 million rows completely locks the database for hours at a time. After some deliberation, FriendFeed decided to implement a "schema-less" storage system on top of MySQL rather than use a completely new storage system. This talk attempts to describe the high-level details of the system.

Bret Tayler is one of the founders of Before starting FriendFeed, he was a Group Product Manager at Google, responsible for Google's developer products. Before that, he launched Google Maps and Google Local, and before that he worked on Google's crawling and indexing infrastructure.

6:30 - 7:00 -- Doors open/general socializing & food provided by Sun Startup Essentials
7:00 - 7:15 -- Intro/announcements
7:20 - 8:30 -- Main presentation by Bret Taylor
8:30 - 9:00 -- Main presentation Q&A
9:00 - 10:00 -- General discussion/Q&A/networking/etc.
10:00ish -- end of group

Join or login to comment.

  • Sarah M.

    Bret was cool. He's got an interesting approach to storing arbitrary data that is only vaguely relational...which describes a lot of webapp data these days. Great event.

    April 7, 2009

  • John M.

    A lot of interesting ways to learn not typically done in an informal or relax class.

    April 6, 2009

  • Erin O.

    Wow, good talk. Lots of food for thought.

    April 6, 2009

  • A former member
    A former member

    The talk was shorter than I expected, but it covered what it needed to, so it's all good. Interesting approach, and I'm curious to try out something similar on one of my own projects.

    April 6, 2009

  • A former member
    A former member

    Pimp Ace Event!! Brett really shared FrendFeed MySQL lessons learned. Very cool

    April 6, 2009

Our Sponsors

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy