Updated: Twitter has shared numerous aspects of its infrastructure over the past few years, and its decision to open source its work on MySQL might be the social media platform’s most useful contribution yet. Sure, open source big data tools are valuable, but they’re not MySQL.
Used by millions of web developers, MySQL is hugely popular; it’s the “M” in the LAMP stack that still underpins many web applications. But it has its problems, among them scalability and performance under the pressure of high transaction rates. This is part of the reason that NoSQL databases came into existence and continue to flourish. So, for anyone concerned with making MySQL scale, being able to see and build upon what a site like Twitter did with the code should be a big deal.
It’s not like Twitter is alone in working on MySQL’s shortcoming or anything — companies such as Tokutek and ScaleBase are centered around this very premise, and Facebook has done some amazing things with the database — but Twitter’s willingness to open source its code is critical. No vendor licenses, no support contracts and no lock-in, just a tried and true MySQL fork from one of the world’ most successful web platforms.
As it turns out, however, Twitter’s move in open sourcing its core MySQL code comes after the company already open sourced various components that sit atop MySQL. In 2010, it open sourced Gizzard, a middleware component for creating distributed databases that can serve tens of thousands of queries per second, and FlockDB shortly thereafter.
Update: Someone alerted me that Facebook does have a site for sharing its MySQL patches, although it’s hosted at Launchpad. Earlier on Monday, commenters to a thread on the MySQL at Facebook page strongly urged Facebook to move its efforts to the far more popular Github, which is where Twitter hosts its code.