Twitter growth prompts switch from MySQL to 'NoSQL' database
Hopes open source technology can further boost improving Twitter uptime record
Computerworld - Ryan King, an engineer at Twitter, today told the blog MyNoSQL that the social networking company plans to move from MySQL to the Cassandra database for what he called its resilience, scalability and large community of open-source developers.
"We have a lot of data, the growth factor in that data is huge and the rate of growth is accelerating," King said in the interview posted on MyNoSQL.
San Francisco-based Twitter currently uses a cluster of MySQL servers with a memcached caching system that "is quickly becoming prohibitively costly (in terms of manpower) to operate. We need a system that can grow in a more automated fashion and be highly available," King told MyNoSQL.
The number of daily tweets has grown more than twenty-fold in the past year, from about two million a day in January, 2009 to nearly 50 million a day last month.
That growth has caused pain, and some devoted users complain loudly whenever Twitter crashes and the so-called 'fail whale' appears.
Twitter has nevertheless improved its uptime significantly in the last 12 months. The site was up 99.72% (down 23 hours, 45 minutes) in the last 12 months, according to Web monitoring firm, Pingdom. In 2008, according to Pingdom, Twitter was down for 84 hours, worst of 15 major social networking sites.
Twitter hopes that deploying the Apache Software Foundation's Cassandra database will improve that record further.
First developed by Facebook to augment its MySQL installation, Cassandra is a lean Java-based data store, that shucks the overhead of conventional relational databases. The technology is similar to that offered in other emerging NoSQL databases like MapReduce and Hadoop,
For skilled programmers, the so-called NoSQL databases can boost performance and scalability, which has made them attractive to the consumer Web world.
Like Facebook and Twitter, Digg is also moving from MySQL, the initial Web 2.0 darling, to Cassandra.
Cisco Systems Inc., hosting provider Rackspace and other firms also use Cassandra. The largest Cassandra instance in production runs 100TB of data using 150 servers, according to the project's web site.
The interview was cited in a tweet from King, who has 297,334 Twitter followers.
In the blog intervirew, King said that Twitter looked at a number of options for upgrading its system, including re-architecting MySQL so that it runs better in a cluster (called 'sharding'), and the offerings of several Cassandra NoSQL rivals such as HBase, Voldemort, MongoDB, MemCacheDB, Redis and HyperTable.
King said that test found that Cassandra was more scalable, reliable and easier to manage than the alternatives.
Twitter is "currently moving our largest (and most painful to maintain) table -- the statuses table, which contains all tweets and retweets" to Cassandra, he said. "After this we'll start putting some new projects on Cassandra and migrating other tables."
To minimize downtime during the migration, Twitter plans to implement new features by running them in Cassandra alongside MySQL in case any bugs crop up. Once its determined there are no bugs, Twitter will back up MySQL data and then export it to Cassandra in a process that would take about a week, he said.
Only after more testing, will it turn Cassandra on for production and shut down MySQL.
"Our process for rolling out new major infrastructure can be summed up as 'integrate first, then iterate,' King said.
Eric Lai covers Windows and Linux, desktop applications, databases and business intelligence for Computerworld. Follow Eric on Twitter at
@ericylai, send e-mail to elai@computerworld.com or subscribe to Eric's RSS feed
.
Read more about Databases in Computerworld's Databases Topic Center.


- Excel 2010 Cheat Sheet
- Register for this Computerworld Insider Cheat Sheet and gain access to hundreds of premium content articles, guides, product reviews and more.
- Thinking Outside The Data Warehouse
- This high level, business problem focused eBook uses 5 customer scenarios to show how people and organizations are tackling real issues using IBM...
- Using BD for Smarter Decision Making
- This paper looks at new developments in business analytics and discusses the benefits analyzing big data bring to the business.
- Measuring the Business Value of CI in the Data Center
- One of the key strategies that IT teams are pursuing to reduce capital costs while boosting asset utilization and employee productivity is the...
- Switching Schedulers - Not As Complicated As You Think
- Changing or consolidating job schedulers may seem daunting. However, the benefits of switching to enterprise workload automation outweigh the risks. Read how BMC...
- Capture-Enabled Business Process Management
- Organizations today must deal with a vast amount of incoming information from many different sources. Efficient, automated business processes are critical to managing... All BI and Analytics White Papers
- InfoSphere Warehouse Packs Demo
- These flash modules make warehousing more tangible and relevant to business users through detailed explanations of the InfoSphere Warehouse Packs.
- Delivery Management -- Extending Lifecycle Management
- Date: Wednesday, June 20, 2012, 1:00 PM EDT
Siloed organizations continue doing the wrong things and doing things wrong, leading to increased costs,... - Leverage automation today to reduce IT complexity
- Date: Tuesday, June 5, 2012, 2:00 PM EDT
Whether your B2B complexity is caused by multiple technologies due to M&A, business or application specific... - BMC Control-M - Single Point of Control Demo
- With BMC Control-M, you schedule and manage everything - down to the very last platform and application - from one simple interface. It's...
- BMC Control-M - Single Point of Control Demo
- With BMC Control-M, you schedule and manage everything - down to the very last platform and application - from one simple interface. It's... All BI and Analytics Webcasts